社区
C语言
帖子详情
++i+(++i)
wibnmo
2010-11-23 04:45:02
int i = 3;
int j = sizeof(++i+(++i));
i 和 j的值为什么打印出来是3 4?
希望说详细些,谢谢啦.
...全文
240
11
打赏
收藏
++i+(++i)
int i = 3; int j = sizeof(++i+(++i)); i 和 j的值为什么打印出来是3 4? 希望说详细些,谢谢啦.
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
清香白莲
2010-11-23
打赏
举报
回复
明白了吗????
清香白莲
2010-11-23
打赏
举报
回复
sizeof中的表达式仅仅表示一个某个类型的数而已,不会影响i的值,而sizeof就会求出类型的字节数。
清香白莲
2010-11-23
打赏
举报
回复
sizeof是求字节数的,而后面的数是一个int型的,所以是4;
i值为3,因为后面的值是在sizeof中的,不会改变i的值,如果没有sizeof,则i的值改变。
liutengfeigo
2010-11-23
打赏
举报
回复
[Quote=引用 6 楼 wibnmo 的回复:]
关键是i搞不懂为什么是3.
[/Quote]
都说了你那个括号内不进行求值啊,也就是那话是空话。等于没写
wibnmo
2010-11-23
打赏
举报
回复
关键是i搞不懂为什么是3.
FreddyHu
2010-11-23
打赏
举报
回复
你Sizeof理解错了,你在计算一个int类行
相当于:int j = sizeof(int);
所以 就是3,4
無_1024
2010-11-23
打赏
举报
回复
而sizeof只会对i的类型进行判断不会进行计算
無_1024
2010-11-23
打赏
举报
回复
j永远是4 sizeof球的是类型的长度 也就是i的类型
liutengfeigo
2010-11-23
打赏
举报
回复
好像我说错了,不是编译器不会进行求值。
反正是不会进行求值。
我记得是飞雪告诉我们的。
liutengfeigo
2010-11-23
打赏
举报
回复
sizeof(++i+(++i));//这个括号内编译器不会不进行求值的
compat-libstdc
++
-33-3.2.3-61.x86_64.rpm
RH linux5.4 64位 系统包compat-libstdc
++
-33-3.2.3-61.x86_64.rpm
++
i和i
++
的具体用法
int i=3; int k=0; k=(
++
i)+(i
++
)+(
++
i); //先计算前两个,
++
i + i
++
是4+4=8 之后i变成5,再 +
++
i 是8+6=14 ; System.out.println("k:"+k+",i:"+i+",(i
++
)+(
++
i)+(
++
i)="+k); i=3; k=(i
++
)+(
++
i)+(i
++
); /...
++
i与i
++
的区别
++
i被称为前自加,其后面的变量执行自加操作,其运算为,先执行自加操作,再引用i值。 i
++
被称为后自加,其前面的变量执行自加操作,其运算为,先引用i值,再进行自加操作。 for(i = 0; i < 100; i
++
) for(i = 0; i < 100;
++
i) 这里用到的
++
i和i
++
是完全相同的,没有区别,因为i的值都是加1,只是被赋值一方的值不同。 let j, i = 10; j = i
++
; //这里i要先赋值,再自加。语句执行后j = 10, i = 11; 而如果写成:
for循环i
++
与
++
i效率对比
最近发现i
++
与
++
i的效率原来不同。 我一直是用 for (int i = 0; i < n; i
++
) 但是
++
i效率更高! i
++
:需要申请一个临时变量保存i进行后续计算,再执行自增。
++
i:直接原地自增,再进行后续计算,无需申请内存。 这个微小的差别在数据量较大的时候会有明显的效率差别,所以我以后还是用
++
i吧(苦笑 ...
for循环中的
++
i和i
++
(摘抄总结)
摘要:for循环中使用
++
i和i
++
的区别 我们都知道,在for循环中,使用
++
i有更好的性能。原因是
++
i返回的是i+1后的本身值,而i
++
返回的是i+1之前的临时变量,后者要有临时变量的操作,所以前者效率更高。它们的实现如下: // 前缀形式: int& int::operator
++
() //这里返回的是一个引用形式,就是说函数返回值也可以作为一个左值使用 {//函数本身
C语言
70,020
社区成员
243,264
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章