3

我的问题不长,但对我来说很令人费解。我是那些(我认为是正确的)想了解他们所学语言的每一条规则的人之一。我想知道为什么语言会这样做。

那么,为什么要++*i增加 的值*i,而不是i指针呢?预增量运算符的优先级高于间接运算符。这似乎是常识,但我必须再次确切地知道原因。如果可以,请提供参考。

4

2 回答 2

5

它不能被解析为*(++i),可以吗?

顺便说一句,*和 prefix++具有相同的优先级和从右到左的关联性。

于 2013-11-10T08:48:15.583 回答
3

前缀与一元运算符++具有相同的优先级,*而后缀++hsa 的优先级高于一元运算*符。
如果++ *i编译器将其解释为

++ (*i);  

这意味着,取消引用i,使用它,增加取消引用的值而不改变指针的值。

于 2013-11-10T08:46:18.853 回答