C++ 用于使用逗号运算符的多个控制语句

C++ for with multiple control statements using comma operator

逗号运算符在 'for loop' 中用于编写多个控制语句时如何使用? 我试过了

#include <iostream>

using namespace std;

int main() {
        for (int x = 0, y = 0; x < 3, y < 4; ++x, ++y) {
                cout << x << " " << y << endl;
        }
        return 0;
}

似乎只评估了最后一个表达式。泰

这就是 comma operator 的工作原理。它的第一个操作数 x < 3 被评估,然后结果被丢弃;然后计算第二个操作数 y < 4 并将值 returned 作为逗号运算符的 return 值。 x < 3 在这里没有任何效果。

对于这种情况,您可能希望使用 operator&&operator||,例如x < 3 && y < 4x < 3 || y < 4 根据您的意图。