Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
例如
int a = 3; int b = sizeof(++a); int c = a;
结果是 c 等于 3 还是 4?结果是否取决于特定的编译器?
规范指出,增量运算符在运算符中使用时不会生效sizeof。
sizeof
从抽象的角度来看,这也是有道理的。具体来说,sizeof运算符返回对象使用的字节数。虽然递增整数甚至指针不会改变该整数的大小,但 ++ 运算符会误导新程序员认为大小确实发生了变化。
如果有兴趣查找主题“副作用”以获取有关此主题的更多讨论。