Chinaunix首页 | 论坛 | 博客
  • 博客访问: 708695
  • 博文数量: 67
  • 博客积分: 994
  • 博客等级: 准尉
  • 技术积分: 1749
  • 用 户 组: 普通用户
  • 注册时间: 2011-08-03 14:10
文章分类
文章存档

2014年(11)

2013年(14)

2012年(14)

2011年(28)

分类: C/C++

2011-09-25 10:21:10

下面是一个简单程序:
#include
int main ()
{
        int i=2,j;
        j=sizeof(++i + ++i);
        printf("%d,%d\n",i,j);
        return 0;
}
初看这个程序,刚接触c的童鞋都知道结果,那么结果如何?j=4毋庸置疑,那么i=?,是4还是其他值?
程序编译结果是i=2,j=4.怎么出现这种情况?
函数编译时对于sizeof()里面的变量不予处理。可以参考。
阅读(814) | 评论(0) | 转发(0) |
0

上一篇:inline函数释义

下一篇:list.h分析

给主人留下些什么吧!~~