首頁  >  文章  >  *p+1和*(p+1)有什麼差別

*p+1和*(p+1)有什麼差別

zbt
zbt原創
2023-06-25 14:04:486859瀏覽

*p 1和*(p 1)的差異有:1.優先權不同,p 1中,會先解引用p,而*(p 1)中,會先計算p 1;2 、操作物件不同,p 1是先對p解引用,而(p 1)是先將p加1;3、結果不同,p 1是p指向的物件的值加1,(p 1)是p指向的下一個物件的值。

*p+1和*(p+1)有什麼差別

本教學操作環境:windows10系統、DELL G3電腦。

*p 1和*(p 1)有什麼差別呢?相信不少網友朋友還不太清楚,今天小編就為大家帶來了相關的教程,希望能夠幫到大家。

*p+1和*(p+1)有什麼差別

一、優先權不同

p 1和(p 1)在操作優先權上有所不同。在C/C 中,運算子(解引用運算子)和 (加法運算子)的優先權不同。加法運算子的優先權低於解引用運算子。因此,在p 1中,會先解引用p,然後再加1;在*(p 1)中,因為加括號改變了優先權,會先計算p 1,然後再解引用。

二、操作物件不同

p 1和(p 1)操作的物件也有差別。 p 1是先對p解引用,得到p指向的對象,然後對該對象加1。而(p 1)是先將p加1,使其指向下一個對象,然後對該新對象進行解引用。

三、結果不同

p 1和(p 1)的結果是不同的。 p 1先解引用p,再加1,所以結果是p指向的物件的值加1。而(p 1)是將p加1,然後解引用,所以結果是p指向的下一個物件的值。

以上是*p+1和*(p+1)有什麼差別的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn