Index of Section 3 Manual Pages

Interix / SUATcl_AttemptRealloc.3Interix / SUA

Tcl_Alloc(3)          Tcl Library Procedures         Tcl_Alloc(3)



_________________________________________________________________

NAME
       Tcl_Alloc,    Tcl_Free,   Tcl_Realloc,   Tcl_AttemptAlloc,
       Tcl_AttemptRealloc, ckalloc, ckfree, ckrealloc, attemptck-
       alloc, attemptckrealloc - allocate or free heap memory

SYNOPSIS
       #include 

       char *
       Tcl_Alloc(size)

       void
       Tcl_Free(ptr)

       char *
       Tcl_Realloc(ptr, size)

       char *
       Tcl_AttemptAlloc(size)

       char *
       Tcl_AttemptRealloc(ptr, size)

       char *
       ckalloc(size)

       void
       ckfree(ptr)

       char *
       ckrealloc(ptr, size)

       char *
       attemptckalloc(size)

       char *
       attemptckrealloc(ptr, size)

ARGUMENTS
       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 indepen-
       dent 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 malloc() and free() routines provided by the C run-
       time library.

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

       Tcl_Free  makes the space referred to by ptr available for
       further allocation.

       Tcl_Realloc 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.

       Tcl_AttemptAlloc and Tcl_AttemptRealloc are  identical  in
       function   to   Tcl_Alloc  and  Tcl_Realloc,  except  that
       Tcl_AttemptAlloc and Tcl_AttemptRealloc will not cause the
       Tcl  interpreter  to panic 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 ckalloc, ckfree, ckrealloc, attemptckalloc,
       and attemptckrealloc are implemented as macros.  Normally,
       they  are  synonyms for the corresponding procedures docu-
       mented on this page.  When Tcl and all modules calling Tcl
       are  compiled  with  TCL_MEM_DEBUG 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 Tcl_Alloc, etc.


KEYWORDS
       alloc,   allocation,   free,   malloc,   memory,  realloc,
       TCL_MEM_DEBUG



Tcl                            7.5                   Tcl_Alloc(3)

Interix / SUAHosted at SUA Community for Interix, SUA and SFUInterix / SUA