为什么a+b不能工作?int main (){
int a = 5,b = 2;
printf("%d",a+++++b);
return 0;}此代码提供以下错误:错误:作为增量操作数所需的lvalue但如果我把空间a++ +和++b然后它就可以正常工作了。int main (){
int a = 5,b = 2;
printf("%d",a++ + ++b);
return 0;}第一个例子中的错误意味着什么?
3 回答
幕布斯6054654
TA贡献1876条经验 获得超7个赞
printf("%d",a+++++b);(a++)++ + b
++lvaluelvalue.
德玛西亚99
TA贡献1770条经验 获得超3个赞
AA
+++++a ++ ++ + b
operator++
struct bad_code {
bad_code &operator++(int) {
return *this;
}
int operator+(bad_code const &other) {
return 1;
}};int main() {
bad_code a, b;
int c = a+++++b;
return 0;}- 3 回答
- 0 关注
- 455 浏览
添加回答
举报
0/150
提交
取消
