Поделиться через


AfxIsValidAddress

Выполнение любой адрес памяти, чтобы убедиться, что он полностью содержится в области памяти программы.

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

Параметры

  • lp
    Указывает адрес памяти, подлежащих.

  • nBytes
    Содержит количество байт памяти, подлежащих.

  • bReadWrite
    Определяет, является ли память как для чтения и записи (TRUE) или только для чтения (ЛОЖЬ).

Возвращаемое значение

В отладочных построений, ненулевые, если указанный блок памяти содержится полностью в область памяти программы; в противном случае — значение 0.

В сборках неотладочную, — если lp NOT NULL; в противном случае — значение 0.

Заметки

Не ограничен адрес для блокирования выделенным новый.

Пример

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