Fonction de bibliothèque C - memcmp ()

La description

La fonction de bibliothèque C int memcmp(const void *str1, const void *str2, size_t n)) compare le premier n octets de zone mémoire str1 et zone mémoire str2.

Déclaration

Voici la déclaration de la fonction memcmp ().

int memcmp(const void *str1, const void *str2, size_t n)

Paramètres

  • str1 - Ceci est le pointeur vers un bloc de mémoire.

  • str2 - Ceci est le pointeur vers un bloc de mémoire.

  • n - C'est le nombre d'octets à comparer.

Valeur de retour

  • si la valeur de retour <0, cela indique que str1 est inférieur à str2.

  • si la valeur de retour> 0, cela indique que str2 est inférieur à str1.

  • si Valeur de retour = 0, cela indique que str1 est égal à str2.

Exemple

L'exemple suivant montre l'utilisation de la fonction memcmp ().

#include <stdio.h>
#include <string.h>

int main () {
   char str1[15];
   char str2[15];
   int ret;

   memcpy(str1, "abcdef", 6);
   memcpy(str2, "ABCDEF", 6);

   ret = memcmp(str1, str2, 5);

   if(ret > 0) {
      printf("str2 is less than str1");
   } else if(ret < 0) {
      printf("str1 is less than str2");
   } else {
      printf("str1 is equal to str2");
   }
   
   return(0);
}

Compilons et exécutons le programme ci-dessus qui produira le résultat suivant -

str2 is less than str1