Compartilhar via


_CrtIsValidPointer

Verifica se um intervalo de memória especificado é válido para leitura e gravação (somente a versão de depuração).

int _CrtIsValidPointer( 
   const void *address,
   unsigned int size,
   int access 
);

Parâmetros

  • endereço
    Aponta para o início do intervalo de memória para testar a validade.

  • size
    Tamanho do intervalo especificado de memória (em bytes).

  • acesso
    Acessibilidade de leitura/gravação para determinar o intervalo de memória.

Valor de retorno

_CrtIsValidPointerRetorna VERDADEIRO se o intervalo de memória especificado é válido para a operação especificada ou operações.Caso contrário, a função retornará FALSE.

Comentários

O _CrtIsValidPointer função verifica se o intervalo de memória começando no endereço e se estendendo por size bytes é válido para a operação da acessibilidade especificada ou operações.Quando acesso é definido como TRUE, o intervalo de memória é verificado para leitura e gravação.Quando endereço for falso, o intervalo de memória é validado apenas para leitura.Quando _ Debug não está definido, planos de _CrtIsValidPointer são removidos durante o pré-processamento.

Esta função retorna VERDADEIRO ou falso, ele pode ser passado para uma da _ASSERT macros para criar um simples mecanismo de tratamento de erros de depuração.O exemplo a seguir faz com que um erro de declaração se o intervalo de memória não é válido para leitura e gravação de operações:

_ASSERTE( _CrtIsValidPointer( address, size, TRUE ) );

Para obter mais informações sobre como _CrtIsValidPointer pode ser usado com outras funções de depuração e a macros, consulte Usando Macros para verificação e emissão de relatórios.Para obter informações sobre como blocos de memória são alocados, inicializados e gerenciados na versão de depuração da pilha base, consulte Gerenciamento de memória e a pilha de depuração.

Requisitos

Rotina

Cabeçalho necessário

_CrtIsValidPointer

<crtdbg.h>

Para obter mais informações de compatibilidade, consulte compatibilidade na introdução.

Bibliotecas

Versões de depuração de bibliotecas de tempo de execução c somente.

Exemplo

Consulte o exemplo para o _CrtIsValidHeapPointer tópico.

Equivalência do .NET Framework

Não aplicável. Para chamar a função c padrão, use PInvoke. Para obter mais informações, consulte Exemplos de invocação de plataforma.

Consulte também

Referência

Rotinas de depuração