return the number of times that an item of a given size can be allocated
#include <malloc.h> unsigned int _freect( size_t size );
The _freect() function returns the number of times that _nmalloc() (or malloc() in small data models) can be called to allocate a item of size bytes.
The _freect() function returns the number of calls as an unsigned integer.
calloc(), _heapgrow(), malloc(), _memavl(), _memmax()
#include <stdio.h> #include <malloc.h> void main() { int i; printf( "Can allocate %u longs before _nheapgrow\n", _freect( sizeof(long) ) ); _nheapgrow(); printf( "Can allocate %u longs after _nheapgrow\n", _freect( sizeof(long) ) ); for( i = 1; i < 1000; i++ ) { _nmalloc( sizeof(long) ); } printf( "After allocating 1000 longs:\n" ); printf( "Can still allocate %u longs\n", _freect( sizeof(long) ) ); }
produces the output:
Can allocate 0 longs before _nheapgrow Can allocate 10447 longs after _nheapgrow After allocating 1000 longs: Can still allocate 9447 longs
WATCOM
All (except Netware, DOS/PM)