标题:i++,++i的问题
只看楼主
amdcpu
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2008-4-1
 问题点数:0 回复次数:11 
i++,++i的问题
/* */
#include <stdio.h>
main()
{
    int a=5,b,c,i=10;
    b=a++;
    c=++b;

    printf("a = %d, b = %d, c = %d\n",a,b,c);
    printf("i,i++,i++ = %d,%d,%d\n",i,i++,i++);
    printf("%d\n",++i);
    printf("%d\n",--i);
    printf("%d\n",i++);
    printf("%d\n",i--);
    printf("%d\n",-i++);
    printf("%d\n",-i--);
    getchar();
}
运行出来的答案
a=6 b=6 c=6        a不是等于5吗?这里怎么会=6 ,b=a++将表达式a++的值赋值给a,b应该=5。
i,i++,i++ =12,11,10   上面10就赋值留i i++ 应该是11 然后i又++ 应该是12啊  这里怎么 12 ,11 10
13
12
12
13
-12
-13
可能上面理解错了,下面那个答题,我都理解不不过来,,
谁能解释下,尽量详细点吧  ++i i++搞得头都大了,怎么都想不明白

[[it] 本帖最后由 amdcpu 于 2008-8-10 03:39 编辑 [/it]]
搜索更多相关主题的帖子: printf 赋值 main getchar 
2008-08-10 03:37
absentlyh
Rank: 2
等 级:论坛游民
帖 子:105
专家分:14
注 册:2006-6-5
得分:0 
有2个++了 都已经进行了一次运算了。

我就是我!我自信,我成功!
2008-08-10 08:29
Cromwell
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2008-8-9
得分:0 
a=6 b=6 c=6        a不是等于5吗?这里怎么会=6 ,b=a++将表达式a++的值赋值给a,b应该=5。


a++之后把就是a=a+1啊,但是a++是执行后再加一,所以此时的a=6,b=5啊
2008-08-10 09:25
canfaint
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2008-8-10
得分:0 
...a++之后 a是等于6啊
a参与运算之后 加1了
2008-08-10 10:02
xlh5225
Rank: 2
等 级:论坛游民
威 望:2
帖 子:188
专家分:25
注 册:2007-8-14
得分:0 
写成这样?不用这么夸张吧
2008-08-10 10:35
chentufly
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2007-12-9
得分:0 
i++ 先使用i,再使i加1
++i 先让i加1,再使用i

printf("i,i++,i++ = %d,%d,%d\n",i,i++,i++);
调用函数时,实参数的求值顺序是不确定的
有可能从左到右,也有可能从右到左,大多数系统的求值顺序是从右到左

顺便自己再复习下、、
2008-08-10 11:04
小小熊宝宝
Rank: 2
来 自:江苏无锡
等 级:论坛游民
威 望:2
帖 子:183
专家分:38
注 册:2008-8-12
得分:0 
a是等于6啊,没错啊
2008-08-12 15:18
pigstock
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2008-8-14
得分:0 
b=a++;
相当于执行b=a;a+=1;
a=6,b=5.

c=++b;
相当于执行b+=1;c=b;
b=6,c=6.
2008-08-14 23:56
asd6791868
Rank: 1
来 自:逆流
等 级:新手上路
帖 子:362
专家分:7
注 册:2008-7-27
得分:0 
这问题,,,太费脑子,,,,没工夫研究这个!
如题!

─條路 :  ┈片天  ┈個人  ─瞬間:
2008-08-15 08:39
HERO剧终
Rank: 1
来 自:深圳
等 级:新手上路
帖 子:154
专家分:0
注 册:2008-8-11
得分:0 
RT  最常用的运算符了

水因有月方知静,天为无云始觉高
2008-08-15 11:50



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-227527-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.161069 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved