C语言中,a+++++b的含义是什么?
答案:2 悬赏:80
解决时间 2021-02-12 17:35
- 提问者网友:纹身骑士
- 2021-02-12 09:50
C语言中,a+++++b的含义是什么?
最佳答案
- 二级知识专家网友:木子香沫兮
- 2021-02-12 10:24
a+++++b = (a++)+(++b) = a+(b+1),最终a,b都加一
例如,若a = b = 0,
则c = a+++++b = 0+(b+1) = 0+0+1 = 1
a = 1;
b = 1;
代码
void main()
{
int a,b,c;
a = b = 0;
c = (a++)+(++b);
printf("%d\n%d\n%d\n",c,a,b);
}
例如,若a = b = 0,
则c = a+++++b = 0+(b+1) = 0+0+1 = 1
a = 1;
b = 1;
代码
void main()
{
int a,b,c;
a = b = 0;
c = (a++)+(++b);
printf("%d\n%d\n%d\n",c,a,b);
}
全部回答
- 1楼网友:两不相欠
- 2021-02-12 11:53
c语言编译器对于代码的分解采用的是贪心算法
按照贪心算法分解a+++++b为:
((a++)++)+b
因为a++的结果为左值,而左值不能再进行运算,故a+++++b编译不能通过
除非写成a+++ ++b,在++b前面有个空格,这时候根据贪心算法分解为:
(a++)+(++b)
编译通过
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯