AfxIsValidAddress
测试所有内存地址以确保它在程序的内存空间内完全包含。
BOOL AfxIsValidAddress(
const void* lp,
UINT nBytes,
BOOL bReadWrite = TRUE
);
参数
lp
将测试的内存地址的点。nBytes
包含字节数是测试的内存。bReadWrite
指定内存是否占两个读写 (TRUE) 也读取 (FALSE)。
返回值
如果指定的存储区。程序的内存空间中,完全包含在调试版本,非零;否则 0。
在非调试版本,如果 lp不为 NULL则非零;否则为0.
备注
地址不限制为 new分配的块。
示例
// Allocate a 5 character array, which should have a valid memory address.
char* arr = new char[5];
// Create a null pointer, which should be an invalid memory address.
char* null = (char*)0x0;
ASSERT(AfxIsValidAddress(arr, 5));
ASSERT(!AfxIsValidAddress(null, 5));
要求
头文件: afx.h