1 .\" Copyright (c) 2020-2022 by Alejandro Colomar <colomar.6.4.3@gmail.com>
2 .\" and Copyright (c) 2020 by Michael Kerrisk <mtk.manpages@gmail.com>
4 .\" SPDX-License-Identifier: Linux-man-pages-copyleft
7 .TH INTPTR_T 3type 2022-02-25 "Linux man-pages (unreleased)"
9 intptr_t, uintptr_t \- integer types wide enough to hold pointers
15 .B #include <stdint.h>
17 .BR typedef " /* ... */ " intptr_t;
18 .BR typedef " /* ... */ " uintptr_t;
20 .BR "#define INTPTR_WIDTH" " /* ... */"
21 .B #define UINTPTR_WIDTH INTPTR_WIDTH
23 .BR "#define INTPTR_MAX" " /* 2**(INTPTR_WIDTH \- 1) \- 1 */"
24 .BR "#define INTPTR_MIN" " /* \- 2**(INTPTR_WIDTH \- 1) */"
25 .BR "#define UINTPTR_MAX" " /* 2**UINTPTR_WIDTH \- 1 */"
29 is a signed integer type
32 value can be converted to this type and then converted back.
33 It is capable of storing values in the range
38 is an unsigned integer type
41 value can be converted to this type and then converted back.
42 It is capable of storing values in the range
47 .RB [ U ] INTPTR_WIDTH
48 expand to the width in bits of these types.
52 expand to the maximum value that these types can hold.
56 expands to the minimum value that
60 The length modifiers for the
66 are expanded by the macros
80 The length modifiers for the
86 are expanded by the macros
99 C99 and later; POSIX.1-2001 and later.
101 The following header also provides these types:
104 .BR intmax_t (3type),