C语言中 (a=2,b=5,b++,a+b)为什么是8而不是7

2025-03-25 13:43:35
推荐回答(3个)
回答1:

如果是
(a=2,b=5,a+b++)就是7了
而 (a=2,b=5,b++,a+b)的话
b++的值已经丢掉了,并没有使用在计算里,b自增1
a+b已经是计算b自增过后的值,所以是8

回答2:

(++a,b++)这里面是逗号表达式,也就是说只是输出b++这个表达式,由于是后缀因此输出的当然是-3

回答3:

b++ 表示自增1,此时b=6。