為什么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
++
lvalue
lvalue
.

德瑪西亞99
TA貢獻1770條經驗 獲得超3個贊
A
A
+++++
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 關注
- 431 瀏覽
添加回答
舉報
0/150
提交
取消