NAME | LIBRARY | SYNOPSIS | DESCRIPTION | STANDARDS | HISTORY | NOTES | SEE ALSO | COLOPHON |
|
|
intptr_t(3type) intptr_t(3type)
intptr_t, uintptr_t - integer types wide enough to hold pointers
Standard C library (libc)
#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 */
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 %"PRIiPTR" 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>); resulting commonly in %"SCNuPTR" for scanning uintptr_t values.
C11, POSIX.1-2008.
C99, POSIX.1-2001.
The following header also provides these types: <inttypes.h>.
intmax_t(3type), void(3)
This page is part of the man-pages (Linux kernel and C library
user-space interface documentation) project. Information about
the project can be found at
⟨https://www.kernel.org/doc/man-pages/⟩. If you have a bug report
for this manual page, see
⟨https://git.kernel.org/pub/scm/docs/man-pages/man-pages.git/tree/CONTRIBUTING⟩.
This page was obtained from the tarball man-pages-6.9.1.tar.gz
fetched from
⟨https://mirrors.edge.kernel.org/pub/linux/docs/man-pages/⟩ on
2024-06-26. If you discover any rendering problems in this HTML
version of the page, or you believe there is a better or more up-
to-date source for the page, or you have corrections or
improvements to the information in this COLOPHON (which is not
part of the original manual page), send a mail to
man-pages@man7.org
Linux man-pages 6.9.1 2024-05-02 intptr_t(3type)
Pages that refer to this page: intmax_t(3type), intN_t(3type), void(3type)