Export (0) Print
Expand All
div
Expand Minimize
This topic has not yet been rated - Rate this topic

_CrtIsValidPointer

Verifies that a specified memory range is valid for reading and writing (debug version only).

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

Parameters

address
Points to the beginning of the memory range to test for validity.
size
Size of the specified memory range (bytes).
access
Read/write accessibility to determine for the memory range.

Return Value

_CrtIsValidPointer returns TRUE if the specified memory range is valid for the specified operation or operations. Otherwise, the function returns FALSE.

Remarks

The _CrtIsValidPointer function verifies that the memory range beginning at address and extending for size bytes, is valid for the specified accessibility operation or operations. When access is set to TRUE, the memory range is verified for both reading and writing. When address is FALSE, the memory range is only validated for reading. When _DEBUG is not defined, calls to _CrtIsValidPointer are removed during preprocessing.

Because this function returns TRUE or FALSE, it can be passed to one of the _ASSERT macros to create a simple debugging error handling mechanism. The following example will cause an assertion failure if the memory range is not valid for both reading and writing operations:

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

For more information about how _CrtIsValidPointer can be used with other debug functions and macros, see Using Macros for Verification and Reporting. For information about how memory blocks are allocated, initialized, and managed in the debug version of the base heap, see Memory Management and the Debug Heap.

Requirements

Routine Required header Compatibility
_CrtIsValidPointer <crtdbg.h> Win 98, Win Me, Win NT, Win 2000, Win XP

For additional compatibility information, see Compatibility in the Introduction.

Libraries

Debug versions of C run-time libraries only.

Example

See the example for the _CrtIsValidHeapPointer topic.

See Also

Debug Functions | Run-Time Routines and .NET Framework Equivalents

Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft. All rights reserved.