다음을 통해 공유


AfxIsValidAddress

Tests any memory address to ensure that it is contained entirely within the program's memory space.

BOOL AfxIsValidAddress( 
   const void* lp, 
   UINT nBytes, 
   BOOL bReadWrite = TRUE  
);

매개 변수

  • lp
    Points to the memory address to be tested.

  • nBytes
    Contains the number of bytes of memory to be tested.

  • bReadWrite
    Specifies whether the memory is both for reading and writing (TRUE) or just reading (FALSE).

반환 값

In debug builds, nonzero if the specified memory block is contained entirely within the program's memory space; otherwise 0.

In non-debug builds, nonzero if lp is not NULL; otherwise 0.

설명

The address is not restricted to blocks allocated by new.

예제

// 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));

요구 사항

Header: afx.h

참고 항목

참조

AfxIsMemoryBlock

AfxIsValidString

개념

MFC 매크로 및 전역