c语言逗号运算符优先级问题:先执行++?

2020-06-22 科技 289阅读
d=0;e=0;
这个式子
d=9+e,e++,e+9;
中,优先级最高的是++,但是,它是后自增,后自增在本句其他计算全部执行完之后才运行,所以先不会执行e++;
此时e仍然是0。
接下来,就是按照逗号表达式d=9+e,e++,e+9;的顺序执行了:①执行第一个表达式d=9+e=9+0=9,把结果9赋值给d,所以得到d是9;②第二个表达式e++,刚才分析过了,这个后自增最后执行,此时什么也不会做
;③e+9=0+9=9,这仅仅是做了一个加法,而且得数(9)都没有保留!
最后,e再自增为1。
所以,输出的结果是:d为9,e为1。
有什么问题请留言。
声明:你问我答网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系fangmu6661024@163.com