Manual Pages for UNIX Darwin command on man ckalloc
MyWebUniversity

Manual Pages for UNIX Darwin command on man ckalloc

TclAlloc(3) Tcl Library Procedures TclAlloc(3)

NAME

TclAlloc, TclFree, TclRealloc, TclAttemptAlloc, TclAttemptRealloc,

ckalloc, ckfree, ckrealloc, attemptckalloc, attemptckrealloc - allocate

or free heap memory

SYNOPSIS

##iinncclluuddee <>

char * TTccllAAlllloocc(size) void TTccllFFrreeee(ptr) char * TTccllRReeaalllloocc(ptr, size) char * TTccllAAtttteemmppttAAlllloocc(size) char * TTccllAAtttteemmppttRReeaalllloocc(ptr, size) char * cckkaalllloocc(size) void cckkffrreeee(ptr) char * cckkrreeaalllloocc(ptr, size) char * aatttteemmppttcckkaalllloocc(size) char * aatttteemmppttcckkrreeaalllloocc(ptr, size) AARRGGUUMMEENNTTSS int size (in) Size in bytes of the memory block to allocate. char *ptr (in) Pointer to memory block to free or realloc.

DESCRIPTION

These procedures provide a platform and compiler independent interface for memory allocation. Programs that need to transfer ownership of memory blocks between Tcl and other modules should use these routines rather than the native mmaalllloocc(()) and ffrreeee(()) routines provided by the C

run-time library.

TTccllAAlllloocc returns a pointer to a block of at least size bytes suitably aligned for any use.

TTccllFFrreeee makes the space referred to by ptr available for further allo-

cation. TTccllRReeaalllloocc changes the size of the block pointed to by ptr to size bytes and returns a pointer to the new block. The contents will be unchanged up to the lesser of the new and old sizes. The returned location may be different from ptr. TTccllAAtttteemmppttAAlllloocc and TTccllAAtttteemmppttRReeaalllloocc are identical in function to TTccllAAlllloocc and TTccllRReeaalllloocc, except that TTccllAAtttteemmppttAAlllloocc and TTccllAAtttteemmppttRReeaalllloocc will not cause the Tcl interpreter to ppaanniicc if the memory allocation fails. If the allocation fails, these functions will return NULL. Note that on some platforms, attempting to allocate a block of memory will also cause these functions to return NULL. The procedures cckkaalllloocc, cckkffrreeee, cckkrreeaalllloocc, aatttteemmppttcckkaalllloocc, and

aatttteemmppttcckkrreeaalllloocc are implemented as macros. Normally, they are syn-

onyms for the corresponding procedures documented on this page. When Tcl and all modules calling Tcl are compiled with TTCCLLMMEEMMDDEEBBUUGG defined, however, these macros are redefined to be special debugging versions of of these procedures. To support Tcl's memory debugging within a module, use the macros rather than direct calls to TTccllAAlllloocc, etc. KKEEYYWWOORRDDSS alloc, allocation, free, malloc, memory, realloc, TCLMEMDEBUG Tcl 7.5 TclAlloc(3)




Contact us      |      About us      |      Term of use      |       Copyright © 2000-2019 MyWebUniversity.com ™