永发信息网

若有定义int a=2,b=2;则表达式(a+(b++),b)的值是 1还是2还是3还是4

答案:3  悬赏:20  手机版
解决时间 2021-01-09 20:29
  • 提问者网友:泪痣哥哥
  • 2021-01-09 12:27
若有定义int a=2,b=2;则表达式(a+(b++),b)的值是 1还是2还是3还是4
最佳答案
  • 五星知识达人网友:拾荒鲤
  • 2021-01-09 13:28
表达式(a+(b++),b)的值是3
逗号表达式的结果是最后一个表达式的值,这道题的最后表达式是b,b的值已完成++运算,所以结果为3
全部回答
  • 1楼网友:底特律间谍
  • 2021-01-09 14:24
这个也和编译器有关,要看b++是怎么解释的,反正可以肯定的是这个式子的值跟b相等。在我的环境下测试为3,也就是计算完第一个表达式后b自增1
  • 2楼网友:人類模型
  • 2021-01-09 13:49
逗号表达式的结果以最后一个表达式为准:
例如 a=(3,4)=4;
所以题目(a+b++,b)从左往右看,b++,表示先用b,后吧b+不1,那么
等价于(2+2,3),结果就是取后面的3啦
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯