黑马程序员技术交流社区
标题:
求i 的值,打印出来的跟我想的不一样啊!!求解
[打印本页]
作者:
新手小渣渣
时间:
2015-4-3 17:20
标题:
求i 的值,打印出来的跟我想的不一样啊!!求解
本帖最后由 新手小渣渣 于 2015-4-11 12:02 编辑
#include<stdio.h>
int main()
{
int i=2;
printf("%d,%d,%d\n" ,i*=2,++i,i++);
//结果是6、3、2 这里的i*=2相当于(i=i*2)不是应该是4吗?++file:///C:\Users\ADMINI~1\AppData\LocalLow\Baidu\BAIDUP~1\Account\COMMON~1\CUSTOM~1\Recent\4122E3~1.GIFi是加后取值,i++是加前取值
return 0;
}
作者:
新手小渣渣
时间:
2015-4-3 17:21
怎么跟我发表之前的内容不一样啊?
作者:
游戏龙
时间:
2015-4-3 19:30
应该是编译器的问题,有些编译器是从右到左的
作者:
oucding
时间:
2015-4-3 21:30
printf函数在不同编译器下,他的计算方向是不一样的,很明显在你这编译器下的计算顺序是从右往左的所以会出现6,3,2
作者:
弥风冻雪
时间:
2015-4-3 22:33
++file:///C:\Users\ADMINI~1\AppData\LocalLow\Baidu\BAIDUP~1\Account\COMMON~1\CUSTOM~1\Recent\4122E3~1.GIFi是加后取值,i++是加前取值,中间这一段搞的什么玩意儿。。。。。。。。。。
作者:
So然后
时间:
2015-4-3 22:35
提示:
作者被禁止或删除 内容自动屏蔽
作者:
chenzuliang1993
时间:
2015-4-4 13:53
看不懂你这个
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2