Movatterモバイル変換


[0]ホーム

URL:


man7.org > Linux >man-pages

Linux/UNIX system programming training


intN_t(3type) — Linux manual page

NAME |LIBRARY |SYNOPSIS |DESCRIPTION |STANDARDS |HISTORY |NOTES |SEE ALSO |COLOPHON

intN_t(3type)intN_t(3type)

NAME        top

       intN_t, int8_t, int16_t, int32_t, int64_t, uintN_t, uint8_t,       uint16_t, uint32_t, uint64_t - fixed-width basic integer types

LIBRARY        top

       Standard C library (libc)

SYNOPSIS        top

#include <stdint.h>typedef/* ... */int8_t;typedef/* ... */int16_t;typedef/* ... */int32_t;typedef/* ... */int64_t;typedef/* ... */uint8_t;typedef/* ... */uint16_t;typedef/* ... */uint32_t;typedef/* ... */uint64_t;#define INT8_WIDTH   8#define INT16_WIDTH  16#define INT32_WIDTH  32#define INT64_WIDTH  64#define UINT8_WIDTH  8#define UINT16_WIDTH 16#define UINT32_WIDTH 32#define UINT64_WIDTH 64#define INT8_MAX/*  2**(INT8_WIDTH - 1) - 1   */#define INT16_MAX/*  2**(INT16_WIDTH - 1) - 1  */#define INT32_MAX/*  2**(INT32_WIDTH - 1) - 1  */#define INT64_MAX/*  2**(INT64_WIDTH - 1) - 1  */#define INT8_MIN/*  - 2**(INT8_WIDTH - 1)     */#define INT16_MIN/*  - 2**(INT16_WIDTH - 1)    */#define INT32_MIN/*  - 2**(INT32_WIDTH - 1)    */#define INT64_MIN/*  - 2**(INT64_WIDTH - 1)    */#define UINT8_MAX/*  2**INT8_WIDTH - 1         */#define UINT16_MAX/*  2**INT16_WIDTH - 1        */#define UINT32_MAX/*  2**INT32_WIDTH - 1        */#define UINT64_MAX/*  2**INT64_WIDTH - 1        */#define INT8_C(c)c##/* ... */#define INT16_C(c)c##/* ... */#define INT32_C(c)c##/* ... */#define INT64_C(c)c##/* ... */#define UINT8_C(c)c##/* ... */#define UINT16_C(c)c##/* ... */#define UINT32_C(c)c##/* ... */#define UINT64_C(c)c##/* ... */

DESCRIPTION        top

intN_t are signed integer types of a fixed width of exactly N       bits,N being the value specified in its type name.  They are be       capable of storing values in the range [INTN_MIN,INTN_MAX],       substitutingN by the appropriate number.uintN_t are unsigned integer types of a fixed width of exactly N       bits, N being the value specified in its type name.  They are       capable of storing values in the range [0,UINTN_MAX],       substitutingN by the appropriate number.       According to POSIX, [u]int8_t, [u]int16_t, and [u]int32_t are       required; [u]int64_t are only required in implementations that       provide integer types with width 64; and all other types of this       form are optional.       The macros [U]INTN_WIDTHexpand to the width in bits of these       types (N).       The macros [U]INTN_MAXexpand to the maximum value that these       types can hold.       The macrosINTN_MINexpand to the minimum value that these types       can hold.       The macros [U]INTN_C() expand their argument to an integer       constant of type [u]intN_t.       The length modifiers for the [u]intN_t types for theprintf(3)       family of functions are expanded by macros of the formsPRIdN,PRIiN,PRIuN, andPRIxN (defined in<inttypes.h>); resulting for       example in%"PRId64"or%"PRIi64"for printingint64_t values.       The length modifiers for the [u]intN_t types for thescanf(3)       family of functions are expanded by macros of the formsSCNdN,SCNiN,SCNuN, andSCNxN, (defined in<inttypes.h>); resulting for       example in%"SCNu8"or%"SCNx8"for scanninguint8_t values.

STANDARDS        top

       C11, POSIX.1-2008.

HISTORY        top

       C99, POSIX.1-2001.       The [U]INTN_WIDTHmacros were added in C23.

NOTES        top

       The following header also provides these types:<inttypes.h>.<arpa/inet.h> also providesuint16_t anduint32_t.

SEE ALSO        top

intmax_t(3type),intptr_t(3type),printf(3)

COLOPHON        top

       This page is part of theman-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.15.tar.gz       fetched from       ⟨https://mirrors.edge.kernel.org/pub/linux/docs/man-pages/⟩ on       2025-08-11.  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 isnot       part of the original manual page), send a mail to       man-pages@man7.orgLinux man-pages 6.15            2025-05-17intN_t(3type)

Pages that refer to this page:intmax_t(3type)



HTML rendering created 2025-09-06 byMichael Kerrisk, author ofThe Linux Programming Interface.

For details of in-depthLinux/UNIX system programming training courses that I teach, lookhere.

Hosting byjambit GmbH.

Cover of TLPI


[8]ページ先頭

©2009-2025 Movatter.jp