int main()
{
int x[3]={4,5,6};
int *p=x;
p +1=p;/*compiler shows error saying
lvalue required as left
operand of assignment*/
cout<<p 1;
getch();
}
ステートメントに代入演算子がある場合、演算子のLHSは、言語が左辺値と呼ぶものでなければなりません。オペレーターのLHSが左辺値に評価されない場合、RHSからの値をLHSに割り当てることはできません。
使用できません:
10 = 20;
以来10
に評価されない左辺値。
次を使用できます。
int i;
i = 20;
左辺値にi
評価されるので。
使用できません:
int i;
i + 1 = 20;
以来i + 1
に評価されない左辺値。
あなたの場合、lavalueにp + 1
評価されません。したがって、使用することはできません
p + 1 = p;
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加