标题:帮忙看下这题结果啊
只看楼主
printflove
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2012-10-21
结帖率:50%
已结贴  问题点数:20 回复次数:3 
帮忙看下这题结果啊
#include<iostream>

inline int band(int x)
{
    return (x>5&&x<10)?x:0;
}

int main()
{
    using namespace std;
        int a=5;
        cout<<a<<endl;
        cout<<band(++a)<<endl;
        cout<<a<<endl;
    return 0;
}
结果输出是5 6 6.为什么不是5 7 7?不是进行了两次++操作?
搜索更多相关主题的帖子: return 
2014-02-26 22:43
fl8962
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:14
帖 子:539
专家分:2471
注 册:2012-10-17
得分:7 
两次++操作?哪来的两次? 难道楼主认为++是两个加号所以是加两次?

想抽苏烟了。
2014-02-27 00:58
w851777025
Rank: 7Rank: 7Rank: 7
来 自:新疆
等 级:黑侠
威 望:2
帖 子:135
专家分:584
注 册:2014-1-19
得分:7 
是5 6 6啊
2014-02-27 21:10
hms
Rank: 2
等 级:论坛游民
威 望:1
帖 子:13
专家分:22
注 册:2014-3-1
得分:7 
++a是先执行自加,再执行你定义的函数,再得到你的函数返回值,整个过程只有一次加法,怎么会输出5,7,7
2014-03-01 17:01



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




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

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