gpt4 book ai didi

C 编程 : += vs =+

转载 作者:太空狗 更新时间:2023-10-29 16:57:27 24 4
gpt4 key购买 nike

我的教授和我正在就 C 中的 += 运算符进行一些辩论。他说 += 或 =+ 会起作用,但他不确定为什么 =+ 起作用。

int main()
{
int i = 0, myArray[5] = {1,1,1,1,1};

while(i < 5)
{
myArray[i] += 3 + i;
printf("%d\n", myArray[i]);
i++;
}

system("pause");
}

输出将产生 4、5、6、7、8。将 += 运算符更改为 =+ 会产生相同的结果。但是 -= 与 =- 的作用不同(这很明显,因为它将 3 视为 3)。

所以 C 大师们:

  • 为什么这适用于 =+?
  • C 编译器如何处理 =+ 与 +=?

最佳答案

他错了; +==+ 完全不同。

表达式 x =+ 3 被解析为 x = (+3)
在这里,+ 成为(相当无用的)一元 + 运算符。 (否定的反义词)

表达式 x =- 3 使用一元否定运算符解析为 x = (-3)

关于C 编程 : += vs =+,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5011924/

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