为了账号安全,请及时绑定邮箱和手机立即绑定

i是怎么取值的?

54895a8f0001bc9e06840112.jpg

while中i首先赋值0,进入while后i++,这个不是先取值后计算吗?这样的话,i还是0呀,printf结果i就是第0遍写了?






等等

正在回答

2 回答

我现在的理解是只有在直接打印时会先取值

例如:

int i = 0;

printf("%d",i++)   这个时候i的值是0;

如果是:

printf("#d",++i)值打印出来就是1了。

电脑在读代码时,是从左往右,从上到下;

所以你发的例子里 

i++; 计算机读到;号 i的值已经变了。

printf("%d",i++)   这个例子里,计算机在读的时候读到i还没有读到++就取值打印了,

所以才有了 i++是先打印再取值,++i是先取值再打印的说法。

个人理解,不一定对


0 回复 有任何疑惑可以回复我~

对啊,他的第0遍相当于第一遍,因为他的i取值是小于10,而小明是被罚抄十次

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

i是怎么取值的?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信