This structure defines an optional memory allocator to be used by fpInit()
. See fpInit().
typedef struct tag_MemoryStream { void *pMemoryStreamPrivateData; void * (pascal *fpMalloc)(struct tag_MemoryStream*,size_t); void (pascal *fpFree) (struct tag_MemoryStream*, void *); void * (pascal *fpRealloc)(struct tag_MemoryStream*,void *, size_t); void * (pascal *fpCalloc)(struct tag_MemoryStream*, size_t, size_t); } KVMemoryStream;
All member functions are equivalent to their counterparts in the ANSI standard library.
fpRealloc()
must handle a NULL
pointer.
For systems that do not support fpRealloc()
, refer to the callback
sample program, which demonstrates how to use the memory management features.
If KVMemoryStream
is not provided, the default C run-time memory allocation is used.
|