use*_*451 -1 c assignment-operator
你能用C进行多次赋值操作吗?
int a = 0, b = 0, c = 0, d = 0;
(((a = b) = c) = d);
Run Code Online (Sandbox Code Playgroud)
我已经读过某个地方,C标准声明这个结果不会是左值?这是不确定的?
pmg*_*pmg 11
你可以做
a = b = c = d;
Run Code Online (Sandbox Code Playgroud)
这是一样的
a = (b = (c = d));
Run Code Online (Sandbox Code Playgroud)
如你所说,(子)表达式(a = b)不是左值,不能赋值.