gpt4 book ai didi

c - 需要左值作为赋值的左操作数

转载 作者:行者123 更新时间:2023-11-30 18:22:23 26 4
gpt4 key购买 nike

我无法编译这个程序。谁能告诉我哪里出错了。

int i = 8, j, k;
++i = ++j = ++k = 8;
printf("\n %d \t %d \t %d",i,j,k);

它给出了错误
错误:需要左值作为赋值的左操作数

最佳答案

++i不是左值(如此命名是因为它们通常出现在赋值的左侧)。

正如标准所述(C11 6.3.2.1):

An lvalue is an expression (with an object type other than void) that potentially designates an object.

i 本身是一个左值,但是像这样预先递增它意味着它不再是这样,++i 是一个不代表任何特定对象的表达式。

关于c - 需要左值作为赋值的左操作数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23236234/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com