ポインターの比較: 同等性とその他の問題
ポインターを比較して同じオブジェクトを参照しているかどうかを判断する場合、直感的な解決策は、等価演算子 (==)。ただし、C 標準では、この単純な基準を超えて、ポインター比較に関する具体的なガイドラインが提供されています。
等価比較 (== および !=)
C 11 によると標準 (セクション 5.10) では、同じ型のポインタは次の条件で等しいかどうか比較できます:
関係比較 (<、>、<=、>=)
C 11 標準では、セクション 5.9 でポインターの関係演算子の動作についても概説しています。ルールは等価比較のルールと似ていますが、いくつかの例外があります。
特定のケース
ポインター比較の動作は、特定のコンテキストに応じて異なる可能性があることに注意してください。
結論
同じオブジェクトへのポインターを比較するには、一般に a == b で十分ですが、正確で正確な結果を保証するには、C 標準で概説されている潜在的な警告を考慮することが不可欠です。すべてのシナリオで予測可能な動作。
以上がC でポインターを安全に比較するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。