直接看代码
c
#include <stdio.h>
int main()
{
int i = 2;
int j;
j = sizeof(++i + i++);
printf("i = %d, j = %d", i ,j);
return 0;
}
执行结果:
可以看到 i的值一直是没有变的, j 是int类型下 sizeof占用的大小为 4个字节,不是i的 2+2的大小,即使我修改i的值为3 j的大小也是4.