-2
r
всегда имеет последнее целое число между скобками.Почему int r = (int, int, int); не дает ошибку, а 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) – BoBTFish
@juanchopanza Итак, это не дубликат, по крайней мере, не тот вопрос. –
Короткий ответ на вопрос в заголовке: так как язык 'C' был разработан для работы (и' C++ 'унаследовал это поведение). – axiac