Maison > Questions et réponses > le corps du texte
#include<stdio.h>
int main(){
int a=5;
printf("%d %d %d",a++,a++,++a);
return 0;
}
La réponse est la suivante :
In LINUX GCC compiler
7 6 8
In TURBO C
7 6 6
Je peux comprendre les 7 6 6
的答案,但我实在无法理解为什么LINUX GCC compiler的输出是7 6 8
。虽说知道这属于undefiend behavior
,但还是想知道为什么有7 6 8
résultats.
Source de la question originale : Plusieurs questions d'entretien classiques en langage C sous Linux
習慣沉默2017-06-26 11:01:11
En fait, c'est parce qu'il s'agit d'un comportement indéfini qui n'est pas dans la spécification, donc le compilateur est correct quelle que soit la façon dont il le calcule, et il est correct même si les résultats obtenus par le compilateur ne sont pas uniformes.