2016-03-07 98 views
-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 

我想知道的是爲什麼會發生這種情況。

+3

[逗號運算符(https://en.wikipedia.org/wiki/Comma_o​​perator) – BoBTFish

+0

@juanchopanza那麼它不是重複的,至少不是那個問題。 –

+3

標題問題的簡短答案:因爲這是'C'語言被設計爲如何工作(和'C++'繼承了這種行爲)。 – axiac

回答

相關問題