为什么 int r = (int, int, int);没有给出错误并且 r 具有最后一个整数的值?
Why int r = (int, int, int); doesn't give error and r has the value of the last integer?
r
始终是括号之间的最后一个整数。
以下程序的输出是什么?
#include <iostream>
using namespace std;
main() {
int i = 1, j = 2, k = 3, r;
r = (i, j, k);
cout << r <<endl;
}
可能的答案:
A - 1
B - 2
C - 3
D - Compile Error
我想知道的是为什么会这样。
这是逗号运算符 - 请参阅 https://en.wikipedia.org/wiki/Comma_operator
因此r
会在这条语句中得到k
的值
r = (i, j, k);
r
始终是括号之间的最后一个整数。
以下程序的输出是什么?
#include <iostream>
using namespace std;
main() {
int i = 1, j = 2, k = 3, r;
r = (i, j, k);
cout << r <<endl;
}
可能的答案:
A - 1
B - 2
C - 3
D - Compile Error
我想知道的是为什么会这样。
这是逗号运算符 - 请参阅 https://en.wikipedia.org/wiki/Comma_operator
因此r
会在这条语句中得到k
的值
r = (i, j, k);