Maison  >  Article  >  développement back-end  >  Différence C/C++ entre strncmp() et strcmp()

Différence C/C++ entre strncmp() et strcmp()

王林
王林avant
2023-09-02 18:21:07864parcourir

Différence C/C++ entre strncmp() et strcmp()

strncmp() et strcmp utilisent la comparaison de caractères ASCII pour comparer deux chaînes. strncmp prend un argument supplémentaire comme nombre de caractères à comparer avec la chaîne. C'est utile car strcmp ne pourra pas terminer son opération si la chaîne n'est pas valide. strcmp recherche un caractère de fin ('/0') à la fin de la chaîne pour terminer son opération. strncmp utilise le no. caractère pour mettre fin à son fonctionnement et est donc sûr.

Exemple

#include <stdio.h>
int main() {
   char str1[] = "TutorialsPoint";
   char str2[] = "Tutorials";
   // Compare strings with strncmp()
   int result1 = strncmp(str1, str2, 9);
   if(result1 == 0){
      printf("str1 == str2 upto 9 characters!\n");
   }
   // Compare strings using strcmp()
   int result2 = strcmp(str1, str2);
   if(result2 == 0){
      printf("str1 == str2!\n");
   } else {
      if(result2 > 0){
         printf("str1 > str2!\n");
      } else {
         printf("str1 < str2!\n");
      }
   }
   return 0;
}

Sortie

str1 == str2 upto 9 characters!
str1 > str2!

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer