Longueur de la chaîne à l’aide de pointeurs

Je cherchais des tours de code. J’en ai trouvé un dont je reçois les bases, mais je ne comprends pas pourquoi il existe. Cela a à voir avec un pointeur de chaîne dans une boucle while. D’habitude, je ne traite pas de chaînes car je travaille principalement sur des systèmes embarqués … des gadgets. J’ai besoin de comprendre pourquoi le pointeur de chaîne se termine lorsqu’il n’est pas incrémenté.

de sorte que dans ce code, vous passez un pointeur sur une chaîne, puis dans cette boucle while, vous incrémentez le compteur qui est ajouté au pointeur de sorte que l’adresse à laquelle vous accédez continue à être incrémentée. Je comprends tout ça. Ma question est pourquoi ça se termine? que se passe-t-il pour que la boucle while soit évaluée à false et quitte? pour moi, il semblerait que cela continue à augmenter à la taille d’un int, puis à reprendre.

int ssortingng_length(char *s) { int c = 0; while(*(s+c)) c++; return c; } 

while(*(s+c)) renvoie false lorsque le caractère null est rencontré et rompt la boucle

Une chaîne est un araire de caractères, dont le dernier est le caractère final – \ 0. L’évaluation de while vérifie chaque caractère commençant par la position indiquée par le pointeur s, puis passe au caractère suivant (entrée du tableau suivant) en ajoutant c à l’adresse de départ. Une fois que \ 0 – le caractère final – est atteint, la boucle est interrompue.

int lungh(char *p){ char *r = p; while(*p++!='\0'){} return pr; }