ポインタが有効か判断する方法【Windows API】
ポインタってありますよね。基本的に難しいと言われていますが、 慣れてしまえばどうということはありません。しかし、初期化忘れなどで 得体の知れないバグを発生させてしまうこともあります。そこで使われるのが 「IsBadCodePtr」です。これを使えば簡単にポインタの指しているアドレスが 有効であるかの確認ができます。
int main(int argc, char* argv[])
{
char *pszBuff;
if (IsBadCodePtr((FARPROC)pszBuff)) {
printf("無効なポインタ\n");
} else {
printf("有効なポインタ\n");
}
pszBuff = (char*)malloc(10);
if (IsBadCodePtr((FARPROC)pszBuff)) {
printf("無効なポインタ\n");
} else {
printf("有効なポインタ\n");
}
free(pszBuff);
return 0;
}
