AfxIsValidAddress
Testes de qualquer endereço de memória para garantir que ele está contido inteiramente em espaço de memória do programa.
BOOL AfxIsValidAddress(
const void* lp,
UINT nBytes,
BOOL bReadWrite = TRUE
);
Parâmetros
lp
Aponta para o endereço de memória a ser testado.nBytes
Contém o número de bytes de memória a ser testado.bReadWrite
Especifica se a memória é tanto para leitura e gravação (TRUE) ou somente leitura (FALSE).
Valor de retorno
Em compilações de depuração, diferente de zero se o bloco de memória especificado está contido inteiramente em espaço de memória do programa; Caso contrário, 0.
Em compilações de depuração não diferente de zero se lp não é nulo. Caso contrário, 0.
Comentários
O endereço não está restrito aos blocos alocados pelo nova.
Exemplo
// 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
Cabeçalho: Afx. h