24小时热门版块排行榜    

查看: 1077  |  回复: 10
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

青山云水

新虫 (小有名气)

[求助] 编程小问题 已有6人参与

#include<stdio.h>
int main()
{
        int a=1;
        printf("%d\t%d\n",a,a++);
}
运行结果是:2      1.
为什么不是1     1?
请讲具体点,谢谢。
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

jsky1988

新虫 (小有名气)

【答案】应助回帖

★ ★
感谢参与,应助指数 +1
青山云水(xzhdty代发): 金币+2, 感谢参与 2014-01-26 17:26:15
a++当成一个函数,这个函数的操作数是变量a,其作用是将操作数a的值加1,但是它的返回值却是当前a的值。在printf函数调用a++时,a的值已经加1,但a++函数返回的是a原来的值。(++a是返回a+1的值)。不知道这样理解对你有帮助不??

[ 发自小木虫客户端 ]
4楼2014-01-24 17:31:34
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 11 个回答

yu784815155

铁杆木虫 (正式写手)

运算过后a为2

[ 发自小木虫客户端 ]
相逢一醉是前缘,风雨散,飘然何处。
2楼2014-01-24 17:13:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

chyan0371

金虫 (小有名气)

【答案】应助回帖

感谢参与,应助指数 +1
表达式从右到左扫描么?我记得好像有这么个说法,扫描顺序因机器而不同。

[ 发自小木虫客户端 ]
3楼2014-01-24 17:18:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

jsky1988

新虫 (小有名气)

【答案】应助回帖

★ ★ ★
青山云水: 金币+3, 有帮助 2014-02-04 13:23:42
引用回帖:
4楼: Originally posted by jsky1988 at 2014-01-24 17:31:34
a++当成一个函数,这个函数的操作数是变量a,其作用是将操作数a的值加1,但是它的返回值却是当前a的值。在printf函数调用a++时,a的值已经加1,但a++函数返回的是a原来的值。(++a是返回a+1的值)。不知道这样理解对 ...

说明一下:++这个符号事一个运算符,广义上讲它是一个函数,有返回值的。

[ 发自小木虫客户端 ]
5楼2014-01-24 17:36:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见