int main ()
{
int a = 5,b = 2;
printf("%d",a+++++b);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
此代码提供以下错误:
错误:需要左值作为递增操作数
但是,如果我把整个空间a++ +和++b,然后正常工作.
int main ()
{
int a = 5,b = 2;
printf("%d",a++ + ++b);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
第一个例子中的错误是什么意思?
我对后增量和预增量运算符的返回值感到困惑.它是返回r值还是l值.
#include<iostream>
using namespace std;
int main(){
int a=10;
cout<<++a++<<"\n";
}
Run Code Online (Sandbox Code Playgroud)
以下代码给出了编译错误.
error: lvalue required as increment operator
Run Code Online (Sandbox Code Playgroud)
为什么会出错?
编译器如何评估表达式++a++?