Visual Studio 2005スレ Part19
■ このスレッドは過去ログ倉庫に格納されています
0749デフォルトの名無しさん
2007/04/02(月) 22:14:54void CMemoryTestDlg::OnBnClickedOk()
{
char* p = new char[10];
delete [] p;
ASSERT(IsBadCodePtr((FARPROC)p) == 0);
}
MSDNによれば、
>呼び出し側プロセスが指定したメモリに対して読み取りアクセスを行える場合は、0 が返ります。
>指定されたメモリに対して読み取りアクセスを行えない場合は、0 以外の値が返ります。
とのことなので、これはASSERTで、思いっきり停止するかと思ったのですが、全く停止しません。
読み込めない場所を判断したくて、IsBadCodePtrを使っているのに、使い方が間違っているのでしょうか……
どなたか教えてください。
環境はWinXPHOME、VS2005 Pro、言語はC++を使っています。
■ このスレッドは過去ログ倉庫に格納されています