AfxIsValidAddress

Testes de qualquer endereço de memória para garantir que ele está contido totalmente dentro do 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 é para leitura e gravação (TRUE) ou somente leitura (FALSE).

Valor de retorno

Em compilações de depurar, diferente de zero se o bloco de memória especificado está contido totalmente em espaço de memória do programa; caso contrário, 0.

Em compilações de depurar não, diferente de zero se lp não é nulo; caso contrário, 0.

Comentários

O endereço não está restrito a blocos alocados por novo.

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

Consulte também

Conceitos

Macros do MFC e globais

Referência

AfxIsMemoryBlock

AfxIsValidString