dwww Home | Manual pages | Find package

intptr_t(3type)                                                 intptr_t(3type)

NAME
       intptr_t, uintptr_t - integer types wide enough to hold pointers

LIBRARY
       Standard C library (libc)

SYNOPSIS
       #include <stdint.h>

       typedef /* ... */ intptr_t;
       typedef /* ... */ uintptr_t;

       #define INTPTR_WIDTH  /* ... */
       #define UINTPTR_WIDTH INTPTR_WIDTH

       #define INTPTR_MAX    /*  2**(INTPTR_WIDTH - 1) - 1  */
       #define INTPTR_MIN    /*  - 2**(INTPTR_WIDTH - 1)    */
       #define UINTPTR_MAX   /*  2**UINTPTR_WIDTH - 1       */

DESCRIPTION
       intptr_t is a signed integer type such that any valid (void *) value can
       be  converted  to  this  type and then converted back.  It is capable of
       storing values in the range [INTPTR_MIN, INTPTR_MAX].

       uintptr_t is an unsigned integer type such that any valid (void *) value
       can be converted to this type and then converted back.  It is capable of
       storing values in the range [0, INTPTR_MAX].

       The macros [U]INTPTR_WIDTH expand to the width in bits of these types.

       The macros [U]INTPTR_MAX expand to the maximum value  that  these  types
       can hold.

       The  macro  INTPTR_MIN  expands  to  the minimum value that intptr_t can
       hold.

       The length modifiers for the [u]intptr_t types for the printf(3)  family
       of  functions  are  expanded by the macros PRIdPTR, PRIiPTR, and PRIuPTR
       (defined in <inttypes.h>); resulting commonly in  %"PRIdPTR"  or  %"PRI-
       iPTR"  for  printing  intptr_t  values.   The  length  modifiers for the
       [u]intptr_t types for the scanf(3) family of functions are  expanded  by
       the  macros SCNdPTR, SCNiPTR, and SCNuPTR (defined in <inttypes.h>); re-
       sulting commonly in %"SCNuPTR" for scanning uintptr_t values.

STANDARDS
       C11, POSIX.1-2008.

HISTORY
       C99, POSIX.1-2001.

NOTES
       The following header also provides these types: <inttypes.h>.

SEE ALSO
       intmax_t(3type), void(3)

Linux man-pages 6.9.1              2024-05-02                   intptr_t(3type)

Generated by dwww version 1.16 on Tue Dec 16 06:59:06 CET 2025.