Bonjour,

Je suis entrain de lire le code d'un collègue mais je comprend pas ce que fait cette fonction:
on suppose *x ='a' *y ='b'

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
char * myster ( char* x , char* y){
char* z= x;
while ( *z != 0 && *z!=*y){
z++;
if(*z)  return z;
else return NULL;
}
Interprétation que je propose:
En entrée on a deux pointeurs sur caractère, on définit une variable local à la fonction z étant aussi pointeur sur caractère.
tanque *z! = 0 ( 0 correspond en asci a null /* j'ai pas compris ça: c'est quoi le caractère null déjà null est une chaine de caractère*/

et (*z!=*y ) donc pour s'arrêter il faut avoir ou bien *z = b ou bien *z=null!!

juste ici quand on incrémente z au début il s'incrémente de 1 (sizeof(char)) mais après s'il pointe vers un double par exemple ???? il s'incrémentera de 8 ???
j'ai essayé en compilant... mais je vois pas l'idée

Je suis vraiment coincé, merci pour toute réponse