C/C++黑魔法-编译期运行的sizeof

本文介绍sizeof内执行的表达式会在编译期运行

  • 看下列示例输出i++没有被执行,最后的打印依然为0;
  • 从这个示例可以看出,sizeof内不建议使用表达式。
1
2
3
4
5
6
7
8
9
10
#include <stdio.h>

int main(int argc, char *argv[])
{
int i = 0;
printf("%d\n", sizeof(i++)); // 输出: 4
printf("%d\n", i); // 输出: 0

return 0;
}

关于更多

  • 文章首发于微信公众号你才小学生(nicaixiaoxuesheng)
  • 后续更新于Qtbig哥(qtbig.com)