AfxIsValidAddress
Tests any memory address to ensure that it is contained entirely within the program's memory space.
BOOL AfxIsValidAddress( const void* lp, UINT nBytes, BOOL bReadWrite = TRUE );
Parameters
-
lp
-
Points to the memory address to be tested.
-
nBytes
-
Contains the number of bytes of memory to be tested.
-
bReadWrite
-
Specifies whether the memory is both for reading and writing (TRUE) or just reading (FALSE).
// Allocate a 5 character array, which should have a valid memory address. char *array = new char[5]; // Create a null pointer, which should be an invalid memory address. char *null = (char *)0x0; bool Test1 = AfxIsValidAddress(array, 5); bool Test2 = AfxIsValidAddress(null, 5);
Test1 等于true 即为有效指针
Test2 等于false 即为无效指针