Easonay_Y

验证过才会写出来

关于a+++++b含义的问题

Posted on 2019-09-05 13:36  Easonay_Y  阅读(845)  评论(0编辑  收藏  举报
int a=1,b=1; int c=a+++++b; printf("c=%d/n",c); 这段代码是无法通过编译的。 a+++++b的含义: 唯一有意义的解析方式是:a ++ + ++ b 可是,根据"大嘴法"规则,应该被分解为:a ++ ++ +b ,这个式子从语法上来讲是不正确的,它等价于:((a++)++) +b 但是,a++的结果是不能作为左值的,因此编译器不会接受...