书上说++和--比取运算符高,因此y=*j++与y=*j;j++;等价

来源:百度知道 编辑:UC知道 时间:2024/05/26 17:38:03
我不明白怎么会这样 既然优先级高y=*j++中j先自加再取值 而y=*j;j++;中是先取了j的值后j自加的 怎么会一样呢?

要看++和--的位置

若n++ 则++的优先级最低
若++n 则++的优先级最高

在y*=j++这条语句里 因为++是在j变量的后面 所以优先级最低 先计算y *=j 然后再j++

y=*j++是先取值,再自加,而不是先自加,再取值。

所以y=*j++和y=*j;j++;是等价的。