【发布时间】:2020-12-29 12:22:19
【问题描述】:
来自What does an assignment return?:
赋值表达式在赋值后具有左操作数的值
还有这段代码:
#include <iostream>
using namespace std;
int main() {
int a[5] = { 0,1,2 };
int* a_ptr = a;
int b = (*a_ptr++ = 3); //int *b won't compile
cout << b << endl; //3
}
评估(*a_ptr++ = 3)时=的左操作数是什么?
操作数的定义是什么?在我看来,操作数是标识符或名称,即aptr。
【问题讨论】:
-
操作数是你给操作员的任何“参数”。不必是标识符或名称 -
3两者都不是,但您仍然可以毫无问题地将其用作操作数。 -
你为什么用 C 标记这个?这是 C++ 代码。
标签: c++