AfxIsValidAddress
Prueba las direcciones de memoria para garantizar que está incluida totalmente dentro del espacio de memoria del programa.
BOOL AfxIsValidAddress(
const void* lp,
UINT nBytes,
BOOL bReadWrite = TRUE
);
Parámetros
lp
Apunta a la dirección de memoria que se va a probar.nBytes
Contiene el número de bytes de memoria que se va a probar.bReadWrite
Especifica si la memoria es ambas para leer y escribir (TRUE) o simplemente leer (FALSE).
Valor devuelto
En depuración compila, distinto de cero si el bloque de memoria especificado se encuentra totalmente dentro del espacio de memoria del programa; si no 0.
En versiones compila, distinto de cero si lp no es NULL; si no 0.
Comentarios
No restringen la dirección a los bloques asignados por new.
Ejemplo
// 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));
Requisitos
Header: afx.h