跳轉到內容

C 程式設計/limits.h

來自華夏公益教科書,自由的教科書

limits.h 包含常用變數型別特徵的定義。這些值是特定於實現的,但在符合 C 標準的實現中,其大小可能不小於某些指定值。

C99 標準還規定了<stdint.h>標頭檔案,它提供了顯式大小的平臺無關整數資料型別的名稱和限制(例如,int32_t 表示 32 位有符號整數)。

成員常量

[編輯 | 編輯原始碼]

“最小量級值”列是標準中規定的該常量的最小可能量級。特別地,_MIN 值代表了很少使用的補碼和符號幅度形式中可表示的最小量級。大多數實現的至少部分這些數字的量級更大。例如:

  • 補碼實現的 SCHAR_MIN 等於 -128(其他所有 _MIN 值也是如此)。
  • 32 位實現將 INT_MAX 設定為 +2,147,483,647(INT_MINUINT_MAX 也是如此)。
  • 支援 Unicode 的實現將 MB_LEN_MAX 設定為 4 或更大。
  • 許多 DSP 的 CHAR_BIT 等於 16 或更大[1][2]
名稱 描述 典型值 ANSI 標準最小值 -
或最大量級值
CHAR_BIT char 中的位數 8 ≥+8
SCHAR_MIN 有符號 char 的最小值 -128 ≤−127
SCHAR_MAX 有符號 char 的最大值 +127 ≥+127
UCHAR_MAX 無符號 char 的最大值 +255 ≥+255
CHAR_MIN char 的最小值 -128 ≤−127
(如果 char 表示為
signed char;否則 ≤0)
CHAR_MAX char 的最大值 +127 ≥+127
(如果 char 表示為
signed char;否則 ≥+255)
MB_LEN_MAX 所有語言環境中字元的最大多位元組長度 變化,通常至少為 4 ≥+1
SHRT_MIN 短整型的最小值 -32,768 ≤−32,767
SHRT_MAX 短整型的最大值 +32,767 ≥+32,767
USHRT_MAX 無符號短整型的最大值 +65,535 ≥+65,535
INT_MIN 整型的最小值 16 位編譯器 -32768 或 −2,147,483,648 ≤−32,767
32 或 64 位編譯器 −2,147,483,648
INT_MAX 整型的最大值 16 位編譯器 +32,767 或 +2,147,483,647 ≥+32,767
32 或 64 位編譯器 +2,147,483,647
UINT_MAX 無符號整型的最大值 16 位編譯器 +65,535 或 +4,294,967,295 ≥+65,535
32 或 64 位編譯器 +4,294,967,295
LONG_MIN 長整型的最小值 16 或 32 位編譯器 −2,147,483,648 ≤−2,147,483,647
64 位編譯器 −2,147,483,648 或 −9,223,372,036,854,775,808
LONG_MAX 長整型的最大值 16 或 32 位編譯器 +2,147,483,647 ≥+2,147,483,647
64 位編譯器 +2,147,483,647 或 +9,223,372,036,854,775,807
ULONG_MAX 無符號長整型的最大值 16 或 32 位編譯器 +4,294,967,295 ≥+4,294,967,295
64 位編譯器 +4,294,967,295 或 +18,446,744,073,709,551,615
LLONG_MIN 長長整型的最小值 −9,223,372,036,854,775,808 ≤−9,223,372,036,854,775,807
LLONG_MAX 長長整型的最大值 +9,223,372,036,854,775,807 ≥+9,223,372,036,854,775,807
ULLONG_MAX 無符號長長整型的最大值 +18,446,744,073,709,551,615 ≥+18,446,744,073,709,551,615
[編輯 | 編輯原始碼]
華夏公益教科書