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 < 4
或 x < 3 || y < 4
根据您的意图。
逗号运算符在 '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 < 4
或 x < 3 || y < 4
根据您的意图。