C语言 sizeof 函数内部进行计算

直接看代码

#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.