不太理解sizeof是静态运算符是什么意思。和答案有什么关系?i不应该加了1吗?

如题所述

意思就是说它是编译时确定了值,而不是在运行时

并且sizeof是计算对象的大小,与括号里的操作无关的,你的例子里其实就是计算i对象的大小,i并没有被编译器编译成i=i+1的代码,编译器自动忽略了
温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-05-01
编译时就已经算出了ssizeof(i++)的值4,并且用4替换了sizeof(i++)这一步运算。
实际运行过程中执行的就是把4赋值给t
在运行时()内的任何运算不会对()外产生任何影响。
就好比函数内定义的变量在函数外就无法使用一样,这样的变量叫做静态变量。
sizeof这样的运算符就叫静态运算符。
相似回答