共用方式為


AfxIsValidAddress

測試所有記憶體位址確定它在程式的記憶體空間內完全包含。

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

參數

  • lp
    要測試的記憶體位址的點。

  • nBytes
    包含位元組數目要測試的記憶體。

  • bReadWrite
    指定記憶體是兩個讀取和寫入 (TRUE) 或讀取 (FALSE)。

傳回值

如果指定的記憶體區塊會在程式的記憶體空間內,完全包含在偵錯組建中,非零;否則為 0。

如果 lp 不是空的,請在非偵錯組建,非零;否則為 0。

備註

這個位址不限於 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));

需求

標頭: afx.h

請參閱

參考

AfxIsMemoryBlock

AfxIsValidString

概念

MFC 巨集和全域