共用方式為


比較指標使用關係運算子

當比較兩個相同的型別之物件的指標時,結果依據所指到該程式的位址空間中物件的位置中。 指標也可以比喻為常數運算式會評估結果為 0 或指標的型別 void *。 如果指標比較不會進行型別的指標與 void *,其他指標會隱含地轉換成型別 void *。 再進行比較。

無法比較兩個不同型別的指標,除非:

  • 一種型別是衍生自另一個型別是類別型別。

  • 至少一個指標就會明確轉換 (cast),以鍵入 void *。 (其他指標會隱含地轉換成型別 void * 轉換。)

相同型別的兩個指向相同物件的指標並保證比較相等。 比較兩個物件的非靜態成員的指標時,如果符合下列規則:

  • 如果類別型別不是聯集,而且如果不以分隔兩個成員存取規範,例如公用、 受保護或私用,請宣告成員的指標上一次會比較晚於滑鼠指標以稍早所宣告的成員。 (如存取規範,請參閱 「 語法 」 一節中的 存取規範。)

  • 如果兩個成員以分隔存取規範,結果是未定義。

  • 如果類別型別等位,指向該等位中不同的資料成員的指標進行比較相等。

如果兩個指標指向同一個陣列的項目或項目的其中一個陣列結尾之外,會更高的註標與物件的指標比較更高。 只有在同一個陣列中的物件,或放在其中一個陣列的結尾,請參考指標時,才保證指標的比較有效。

請參閱

參考

二元運算子的運算式