24小时热门版块排行榜    

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

sunchuanxi

新虫 (初入文坛)

[求助] 关于c语言中++i计算的问题 已有4人参与

请问q的值为多少,我试了下是22,但不理解
#include "stdio.h"
void main()
{
int j=5,q;
q=(++j)+(++j)+(++j);
printf("%d",q);
}
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

qqinly

专家顾问 (著名写手)

至人无己,神人无功,圣人无名

这个结果和编译器有关吧,没必要纠结,实际运用中是不会这么写的,因为这种写法可读性差

发自小木虫Android客户端
学而时习之,不亦说乎?有朋自远方来,不亦乐乎?人不知而不愠,不亦君子乎?
26楼2016-04-29 12:54:28
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 33 个回答

wo2cast

木虫 (著名写手)

【答案】应助回帖

感谢参与,应助指数 +1
的确好神奇,我还以为是21呢。
在  q=(++j);                        的时候,输出  6
在  q=(++j)+(++j);                的时候,输出  14  !//这里为啥不是13呢?
在  q=(++j)+(++j)+(++j);       的时候,输出 22  !
'“万事开头难”“之后呢?”“之后你就习惯了”
2楼2016-04-25 22:03:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sunchuanxi

新虫 (初入文坛)

引用回帖:
2楼: Originally posted by wo2cast at 2016-04-25 22:03:45
的确好神奇,我还以为是21呢。
在  q=(++j);                        的时候,输出  6
在  q=(++j)+(++j);                的时候,输出  14  !//这里为啥不是13呢?
在  q=(++j)+(++j)+(++j);       的时候, ...

对呀,不知道怎么算的

发自小木虫Android客户端
3楼2016-04-25 22:17:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

breezefp

新虫 (初入文坛)

应该和编译器有关,我用clang,oc的编译器,是21

发自小木虫Android客户端
4楼2016-04-25 22:28:56
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见