C++ i+=1 i=i+1 的快捷方式?

C++ i+=1 shortcut to i=i+1?

我在下面设置了一个程序。

for (int i = 0; i <= 10; i += 1) {
    cout << "+= " << i << endl;
}
cout << endl;
for (int i = 0; i <= 10; i = i + 1) {
    cout << "+ " << i << endl;
}

我假设 += 1 是 i = i + 1 的快捷方式,因为我不能这样做 (i = 0; i <= 10; i + 1),它只需要 i,它是零,然后加上一个 1,它的总和仅为 1。在循环过程中它实际上并没有对 i 做任何事情。

很抱歉,如果我只是回答了我自己的问题,我可能已经回答了,但我在其他地方找不到答案,我只是想确定一下。

TL:DR 是的,你所有的假设基本上都是正确的。

  • i += 1i 加 1

  • ++i 做同样的事情

  • i + 1 做同样的事情,但不会再次将结果存储在 i 中,因此它不会有用。

提示:i *= 2 会加倍 i

是的,i += 1i=i+1 的快捷方式。但是,如果要将i的值加1,建议使用预自增运算符++i或post-自增运算符i++。这些增量运算符自动将变量的值增加 1。 示例代码:

for (int i = 0; i <= 10; ++i)

+=运算符一般用于将两个变量相加,如

i += j;

以上表达式的计算结果为

i = i + j;

同理,其他运算符也可以和=符号一起使用,比如

i /= j; 计算结果为 i = i / j;

i -= j; 的计算结果为 i = i - j;

i *= j; 的计算结果为 i = i * j;

以此类推