ポインタが有効かどうかを確認するにはどうすればいいですか? [重複] 質問する

ポインタが有効かどうかを確認するにはどうすればいいですか? [重複] 質問する

この質問が醜いことは重々承知していますが、それでも可能かどうか知りたいです。

プログラムが無効なポインタ (NULL、未割り当てブロックなど) を読み書きしようとすると、Windows はアクセス違反例外でアプリケーションをクラッシュさせます。

質問は、このポインターを使用する前に例外を生成するかどうかを確認する方法があるかどうか、またはこの例外をキャッチする方法があるかどうかです。

ベストアンサー1

生のポインターを使用する必要がある場合、それが有効なポインターか NULL のいずれかであることを確認するのが最善策です。その後、それが NULL と等しいかどうかをチェックすることで、有効かどうかを確認できます。

しかし、あなたの質問に答えると、このようなものを捕まえるには構造化例外処理 (SEH)

そうは言っても、SEHは悪い考えだ

おすすめ記事