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

标签 c++ visual-studio-2015 operators difference

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

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 += 1 获取 i 并向其加 1

  • ++i 做同样的事情

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

提示:i *= 2 将加倍 i

关于C++ i+=1 i=i+1 的快捷方式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48275115/

相关文章:

c++ - 初始化顺序和移动语义

c++ - 与 CAM 的距离无关的人脸识别

visual-studio - VS 2015 Native 编译器在构建项目时在 .rdlc 文件上返回值 -1073741511

c - 在 C 中,如何计算无符号数的负数

javascript - 如何检查div元素是否为空

Python:使用 __cmp__ 对间隔进行排序,其中 __lt__ 表示 "strictly less than"

c++ - 重新定义 malloc/free with static linking has multiple definition error

c++ - 无法在基于cmake的qt项目中加载qml文件

iis - 如何配置MVC6应用程序以在IIS上工作?

c# - 如何为面向 net45 的类库(包)项目运行 xunit 测试?