2015-12-15 30 views
0

我對C++中操作的優先級有疑問。我在http://en.cppreference.com/w/cpp/language/operator_precedence中搜索優先順序,我讀到的問題大致相同array increment difference in C評估順序>>和[++]

我沒有得到任何明確的結論。如果我做

var >> array[n++]; 

運算符>>是用於讀取字符的流。 ¿在哪裏存儲我讀的內容?在n還是在n + 1?

謝謝

+0

在數組[n]中...... –

+0

評估順序和優先順序是完全不同的概念,與您的問題無關。 – molbdnilo

回答

8

這是不是真的做優先級,這是後增的語義做。

var >> array[n++]; 

n++將增加n和評價的n原始值。因此,它等同於寫:

var >> array[n]; 
++n; 

那麼該值將被讀取到array[n]

+0

或... *如果您將n作爲語句後的值,則該值將讀入** array [n-1] ** * – Nawaz