Bonsoir tout le monde
Voici le (un des) code source de la fonction strcmp en C qui compare la taille de deux chaines de caractères.
Dans les conditions de while je ne comprends pas ce que veut direCode:int strcmpp(const char *chaine1, const char *chaine2) { int ret = 0; while (!(ret = *(unsigned char *) chaine1 - *(unsigned char *) chaine2) && *chaine2) { ++chaine1, ++chaine2; } if (ret < 0) { ret = -1; } else if (ret > 0) { ret = 1; } return ret; }que veut dire *chaine2 ? quand est-ce que cette condition est-elle vérifiée ?Code:&& *chaine2
Et est-ce queest équivalent àCode:*(unsigned char *) chaine1 - *(unsigned char *) chaine2
?Code:int i=0; chaine1[i]-chaine2[i]; i++;
Merci d'avance.
-----