32ビットシステム(Linux、Mac OS、Windows、PowerPC
またはx86)のC ++開発では、次のように、そうでなければ未定義になる(たとえば、適切な値をすぐに取得できない)ポインターを初期化しました。
int *pInt = reinterpret_cast<int *>(0xDEADBEEF);
(タイピングとDRYを節約するために、右側は通常定数になります(例:BAD_PTR))。
pIntが適切な値を取得する前に逆参照されると、ほとんどのシステムですぐにクラッシュします(一部のメモリが上書きされたり、非常に長いループに入ったりしたときにクラッシュするのではなく)。
もちろん、動作は基盤となるハードウェアに依存します(ユーザープロセスから奇数アドレス0xDEADBEEFから4バイトの整数を取得することは完全に有効かもしれません)が、クラッシュはこれまでに開発したすべてのシステムで100%信頼できます( Mac OS 68xxx、Mac OS PowerPC、Linux Redhat Pentium、Windows GUI Pentium、WindowsコンソールPentium)。たとえば、PowerPCでは、奇数アドレスから4バイト整数をフェッチすることは不正です(バスエラー)。
64ビットシステムでこれに適した値は何ですか?