La fonction memcmp () en C ++ compare un nombre spécifié de caractères de deux objets pointeur
prototype memcmp ()
int memcmp (const void * lhs, const void * rhs, size_t count);
La memcmp()
fonction prend trois arguments: lhs, rhs et count. Cette fonction interprète d'abord les objets pointés par lhs et rhs comme des tableaux de unsigned char
. Ensuite, il compare les premiers caractères de comptage de lhs et rhs de manière lexicographique.
Il est défini dans le fichier d'en-tête "> fichier d'en-tête.
Paramètres de memcmp ()
lhs and rhs
: Pointeur vers les objets mémoire à comparer.count
: Nombre maximum d'octets à comparer.
memcmp () Valeur de retour
La fonction memcmp () renvoie un:
- valeur positive si le premier octet différent dans
lhs
est supérieur à l'octet correspondant dansrhs
. - valeur négative si le premier octet différent dans
lhs
est inférieur à l'octet correspondant dansrhs
. - 0 si les premiers octets de comptage de
lhs
etrhs
sont égaux.
Exemple: comment fonctionne la fonction memcmp ()
#include #include using namespace std; void display(char *lhs, char *rhs, int result, int count) ( if(result> 0) cout << rhs << " precedes " << lhs << endl; else if (result < 0) cout << lhs << " precedes " << rhs << endl; else cout << "First " << count << " characters of " << lhs << " and " << rhs << " are same" << endl; ) int main() ( char lhs() = "Hello World!"; char rhs() = "Hello Earth!"; int result; result = memcmp(lhs, rhs, 5); display(lhs, rhs, result, 5); result = memcmp(lhs, rhs, 7); display(lhs, rhs, result, 7); return 0; )
Lorsque vous exécutez le programme, la sortie sera:
Les 5 premiers personnages de Hello World! et Bonjour la Terre! sont les mêmes Hello Earth! précède Hello World!