Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ XtMalloc(Xt) — OpenDesktop Software Development System 3.0.0

Media Vault

Software Library

Restoration Projects

Artifacts Sought


 XtMalloc(Xt)      X Version 11 (Release 5) 6 January 1993       XtMalloc(Xt)


 Name

    XtMalloc - memory management functions

 Syntax


    char *XtMalloc(size);
    Cardinal size;

    char *XtCalloc(num, size);
    Cardinal num;
    Cardinal size;

    char *XtRealloc(ptr, num);
    char *ptr;
    Cardinal num;

    void XtFree(ptr);
    char *ptr;

    type *XtNew(type);
         type;

    String XtNewString(string);
    String string;


 Arguments

    num       Specifies the number of bytes or array elements.

    ptr       Specifies a pointer to the old storage or to the block of
              storage that is to be freed.

    size      Specifies the size of an array element (in bytes) or the number
              of bytes desired.

    string    Specifies a previously declared string.

    type      Specifies a previously declared data type.

 Description

    The XtMalloc functions returns a pointer to a block of storage of at
    least the specified size bytes.  If there is insufficient memory to allo-
    cate the new block, XtMalloc calls XtErrorMsg.

    The XtCalloc function allocates space for the specified number of array
    elements of the specified size and initializes the space to zero.  If
    there is insufficient memory to allocate the new block, XtCalloc calls
    XtErrorMsg.

    The XtRealloc function changes the size of a block of storage (possibly
    moving it).  Then, it copies the old contents (or as much as will fit)
    into the new block and frees the old block.  If there is insufficient
    memory to allocate the new block, XtRealloc calls XtErrorMsg.  If ptr is
    NULL, XtRealloc allocates the new storage without copying the old con-
    tents; that is, it simply calls XtMalloc.

    The XtFree function returns storage and allows it to be reused.  If ptr
    is NULL, XtFree returns immediately.

    XtNew returns a pointer to the allocated storage.  If there is insuffi-
    cient memory to allocate the new block, XtNew calls XtErrorMsg.  XtNew is
    a convenience macro that calls XtMalloc with the following arguments
    specified:

       ((type *) XtMalloc((unsigned) sizeof(type))

    XtNewString returns a pointer to the allocated storage.  If there is
    insufficient memory to allocate the new block, XtNewString calls XtEr-
    rorMsg.  XtNewString is a convenience macro that calls XtMalloc with the
    following arguments specified:

       (strcpy(XtMalloc((unsigned) strlen(str) + 1), str))


 See also

    XtErrorMsg(Xt)

    X Toolkit Intrinsics - C Language Interface
    Xlib - C Language X Interface


Typewritten Software • bear@typewritten.org • Edmonds, WA 98026