gpt4 book ai didi

c - 前增量和后增量

转载 作者:行者123 更新时间:2023-11-30 19:56:33 24 4
gpt4 key购买 nike

#include<stdio.h> 
int main()
{
int a = 10;
++a = 20;
printf("a = %d", a);
getchar();
return 0;
}

上述代码获得的输出为:a=20;当作为 C++ 代码运行时。

#include<stdio.h> 
int main()
{
int a = 10;
a++ = 20;
printf("a = %d", a);
getchar();
return 0;
}

这会产生编译错误。这背后的原因是什么?

最佳答案

您正在使用 C++ 编译器编译您的程序。

在C++中,前自增运算符的结果是左值,而后自增运算符的结果不是左值。

在 C 中,预自增和后自增运算符都不是左值,因此您无法分配给自增运算符的结果。

如您所见,C 和 C++ 在这件事上有不同的规则,这并不奇怪,因为它们是不同的语言。

关于c - 前增量和后增量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24971290/

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