#include <stdio.h>
int main(void){
int i=0;
printf("%d\n",sizeof(i=1+2));
printf("%d\n",i);
return 0;
}
上面的代码运行结果为:
4
0
因为判断表达式的长度不需要对表达式进行求值,所以sizeof(i=1+2)并没有对i进行赋值,直接求i的长度即可。
#include <stdio.h>
int main(void){
int i=0;
printf("%d\n",sizeof(i=1+2));
printf("%d\n",i);
return 0;
}
上面的代码运行结果为:
4
0
因为判断表达式的长度不需要对表达式进行求值,所以sizeof(i=1+2)并没有对i进行赋值,直接求i的长度即可。