_CrtIsValidPointer

Vérifie qu'une plage spécifiée de mémoire est valide pour la lecture et l'écriture (version debug uniquement).

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

Paramètres

  • adresse
    Pointe vers le début de la plage de mémoire à vérifier la validité.

  • size
    taille de la plage spécifiée de mémoire (en octets).

  • accès
    Accessibilité en lecture/écriture pour tester la plage de mémoire.

Valeur de retour

retourne TRUE d'_CrtIsValidPointer si la plage spécifiée de mémoire est pas valide pour l'opération ou les opérations spécifiée.Sinon, la fonction retourne FALSE.

Notes

La fonction d' _CrtIsValidPointer vérifie que le début de la plage de mémoire à l'adresse et étendre pour les octets d' size est pas valide pour l'opération ou les opérations spécifiée d'accessibilité.Lorsque l'accès est défini la valeur TRUE, la plage de mémoire est extraite pour vérifier la lecture et l'écriture.Lorsque l'adresse est la macro, la plage de mémoire est uniquement requise pour la lecture.Lorsque _DEBUG n'est pas défini, les appels à _CrtIsValidPointer sont supprimés pendant le prétraitement.

Étant donné que cette fonction retourne TRUE ou FALSE, elle peut être passée à l'une des macros de _ASSERT créer un mécanisme simple de gestion des erreurs d'erreur de débogage.L'exemple suivant crée un échec d'assertion si la plage de mémoire est pas valide pour les opérations de lecture et d'écriture :

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

Pour plus d'informations sur la façon dont _CrtIsValidPointer peut être utilisé avec d'autres fonctions et des macros de débogage, consultez À l'aide de les macros pour la vérification et la création de rapports.Pour plus d'informations sur la manière dont les blocs de mémoire sont alloués, initialisés, et gérés dans la version debug de tas de base, consultez gestion de la mémoire et le tas de débogage.

Configuration requise

routine

en-tête requis

_CrtIsValidPointer

<crtdbg.h>

Pour plus d'informations de compatibilité, consultez compatibilité dans l'introduction.

bibliothèques

Versions debug de Bibliothèques runtime C uniquement.

Exemple

Consultez l'exemple fourni pour la rubrique de _CrtIsValidHeapPointer .

Équivalent .NET Framework

Non applicable. Pour appeler la fonction C standard, utilisez PInvoke. Pour plus d'informations, consultez l' exemples d'appel de code non managé.

Voir aussi

Référence

Déboguez des routines