我对C ++中的操作优先级有疑问。我在http://en.cppreference.com/w/cpp/language/operator_precedence中搜索了优先级,并且我读到的这个问题大致相同array increment difference in C
我没有得到任何明确的结论。如果我做
var >> array[n++];
运营商>>用于读取字符的流。 ¿它存放在哪里我读了?在n或n + 1?
谢谢
答案 0 :(得分:8)
这与优先级无关,它与后增量的语义有关。
var >> array[n++];
n++
会增加n
并评估为n
的原始值。因此,它等同于写作:
var >> array[n];
++n;
因此该值将被读入array[n]
。
答案 1 :(得分:4)
存储在n中。 n ++递增计数器并返回旧值。 ++ n递增计数器并返回新值。