C语言赋值语句执行后返回数值不?

来源:百度知道 编辑:UC知道 时间:2024/09/24 12:18:01
比如b=(c=3)
有没有意义?
我也试验了,都是3,你俩是干什么吃的?我晕~~~~~~~~~~~

赋值运算返回左值
即A=(表达式),返回值为A
所以c=3返回值为c,此时c为3
然后再b=c,因此b也为3

因为C=3只是一个赋值语句,这句话成立,所以值是3
所以B=3

都是3,我刚上机验证的

你问的说法有问题,这就是个赋值语句,哪来的什么返回值问题。
C是可以这样连续赋值的,连括号也不用加,直接b=c=3就可以

返回,b=(c=3)的值就是b的值,他的值等于赋值语句(c=3),c=3这条复制语句是成立的,所以b的值为1