Bonsoir,
Je sais que ma question peut paraître tarabiscotée mais quelque chose m'intrigue à propos du while interne du code ci-dessous :
Normalement on sort d'un while quand l'expression est à zéro et je ne sors pas de mon while interne -Code:
1
2
3
4
5
6
7 do{ printf("un nb svp\n"); compte = scanf("%d", &x); while (y=(getchar()!='\n'),z=printf("y=%d et z=%d\n",y,z)); } while(compte!=1);
- alors même que leCode:while (y=(getchar()!='\n'),z=printf("y=%d et z=%d\n",y,z))
est à 0 et leCode:(getchar()!='\n')
- que j'ai inséré pour voir ce que vaut le getchar() - et je teste même le printf avec le z - qui est aussi à zéro.Code:printf("y=%d et z=%d\n",y,z)
Donc tout le while vaut zéro - à la première saisie ensuite z se met à valoir 11, puis 12 ! - et je devrais en sortir à la première saisie, mais non je reste dedans et je ne comprends pas du tout pourquoi ?
Je vous remercie de bien vouloir m'éclairer là dessus si vous avez une idée, merci d'avance !