stdint.hC標準函数庫中的头文件,定义了具有特定位宽的整型,以及对应的宏;还列出了在其他标准头文件中定义的整型的极限。

类型

编辑

具有特定位宽的整型

编辑
typedef signed integer type int8_t;     // optional
typedef signed integer type int16_t;    // optional
typedef signed integer type int32_t;    // optional
typedef signed integer type int64_t;    // optional
typedef unsigned integer type uint8_t;  // optional
typedef unsigned integer type uint16_t; // optional
typedef unsigned integer type uint32_t; // optional
typedef unsigned integer type uint64_t; // optional

位宽不少于指定值的最快速的整型

编辑
typedef signed integer type int_fast8_t;
typedef signed integer type int_fast16_t;
typedef signed integer type int_fast32_t;
typedef signed integer type int_fast64_t;
typedef unsigned integer type uint_fast8_t;
typedef unsigned integer type uint_fast16_t;
typedef unsigned integer type uint_fast32_t;
typedef unsigned integer type uint_fast64_t;

位宽不少于指定值的整型

编辑
typedef signed integer type int_least8_t;
typedef signed integer type int_least16_t;
typedef signed integer type int_least32_t;
typedef signed integer type int_least64_t;
typedef unsigned integer type uint_least8_t;
typedef unsigned integer type uint_least16_t;
typedef unsigned integer type uint_least32_t;
typedef unsigned integer type uint_least64_t;

足够表示对象指標的整型

编辑
typedef signed integer type intptr_t;    // optional
typedef unsigned integer type uintptr_t; // optional

具有最大位宽的整型

编辑
typedef unsigned integer type uintmax_t;
typedef signed integer type intmax_t;

编辑

具有特定位宽的整型的极限

编辑
  • INTN_MIN 为 -(2N-1)
  • INTN_MAX 为 2N-1 - 1
  • UINTN_MAX 为 2N - 1

位宽不少于指定值的整型的极限

编辑
  • INT_LEASTN_MIN 为 -(2N-1)
  • INT_LEASTN_MAX 为 2N-1 - 1
  • UINT_LEASTN_MAX 为 2N - 1

位宽不少于指定值的最快速的整型的极限

编辑
  • INT_FASTN_MIN 为 -(2N-1)
  • INT_FASTN_MAX 为 2N-1 - 1
  • UINT_FASTN_MAX 为 2N - 1

足夠表示對象指標的整型的極限

编辑
  • INTPTR_MIN 為 -(215 - 1)
  • INTPTR_MAX 為 215 - 1
  • UINTPTR_MAX 為 216 - 1

具有最大位宽的整型的极限

编辑
  • INTMAX_MIN 为 -(263 - 1)
  • INTMAX_MAX 为 263 - 1
  • UINTMAX_MAX 为 264 - 1

其它整型的极限

编辑
  • ptrdiff_t
    • PTRDIFF_MIN 为 -65535
    • PTRDIFF_MAX 为 +65535
  • sig_atomic_t
    • SIG_ATOMIC_MIN
    • SIG_ATOMIC_MAX
  • size_t
    • SIZE_MAX 为 +65535
  • wchar_t
    • WCHAR_MIN
    • WCHAR_MAX
  • wint_t
    • WINT_MIN
    • WINT_MAX

整型常量宏

编辑

下述类似于函数的宏,把整型常量值扩展适合其数据类型。

  • 位宽不少于指定值的整型常量的宏。例如:UINT64_C(0x123) 扩展为 0x123ULL
    • INTN_C(value) 把有符号整型值 value 扩展以适应数据类型 int_leastN_t
    • UINTN_C(value) 把无符号整型值 value 扩展以适应数据类型 uint_leastN_t
  • 具有最大位宽的整型常量的宏。
    • INTMAX_C(value) 把有符号整型值 value 扩展以适应数据类型 intmax_t
    • UINTMAX_C(value) 把无符号整型值 value 扩展以适应数据类型 uintmax_t

参考文献

编辑

📚 Artikel Terkait di Wikipedia

Objective-C

"Integer.h" @implementation Integer @synthesize integer; @end Arithmetic.h #import "Integer.h" @interface Integer(Arithmetic) - (id) add: (Integer *)

原始型別

典型的原始型別包含: 字元(character、char),依字元集又分為SBCS、DBCS、MBCS這三大類; 整數(integer、int、short、long、byte),其有各種精度,依是否可表示負數的數值又再各自區分有號數與無號數; 浮點數(float、double、real、double

Visual Basic .NET

Module M Public Function GetSum(arr() As Integer) As Integer Dim Sum = 0 'Auto Type Infer Dim i As Integer For Each i In arr Sum += i Next Return Sum

方法覆写

,可以指定何时期望方法实际覆盖或不覆盖。这将由编译器检查。 type T is new Controlled with ......; procedure Op(Obj: in out T; Data: in Integer); type NT is new T with null record;

FreeBASIC

class'/ Type Vector W as Integer H as Integer Declare Constructor (nW as Integer, nH as Integer) End Type Constructor Vector (nW as Integer, nH as Integer) W

无符号数

(英语). §6.2.5/6: For each of the signed integer types, there is a corresponding (but different) unsigned integer type (designated with the keyword unsigned)

Modula-3

INTERFACE IntegerStack; TYPE T <: Public OBJECT; Public = OBJECT METHODS init(): T; push(x: INTEGER); pop(): INTEGER; END; END IntegerStack. MODULE IntegerStack;

类型双关

character is presumed to be 8 bit: type variant_record = record case rec_type : longint of 1: ( I : array [1..2] of integer ); 2: ( L : longint ); 3: ( R :