C 程式設計/limits.h
外觀
< C 程式設計
(重定向自 C 程式設計/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_MIN和UINT_MAX相同)。 - 支援 Unicode 的實現將設定
MB_LEN_MAX為 4 或更大。 - 許多 DSP 具有
CHAR_BIT等於 16 或更大[1][2].
| 名稱 | 描述 | 典型值 | ANSI 標準最小- 或最大量級值 | |
|---|---|---|---|---|
CHAR_BIT |
char 中的位數 | 8 | ≥+8 | |
SCHAR_MIN |
signed char 的最小值 | −128 | ≤−127 | |
SCHAR_MAX |
signed char 的最大值 | +127 | ≥+127 | |
UCHAR_MAX |
unsigned 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 |
short int 的最小值 | −32,768 | ≤−32,767 | |
SHRT_MAX |
short int 的最大值 | +32,767 | ≥+32,767 | |
USHRT_MAX |
unsigned short int 的最大值 | +65,535 | ≥+65,535 | |
INT_MIN |
int 的最小值 | 16 位編譯器 | -32768 或 −2,147,483,648 | ≤−32,767 |
| 32 位或 64 位編譯器 | −2,147,483,648 | |||
INT_MAX |
int 的最大值 | 16 位編譯器 | +32,767 或 +2,147,483,647 | ≥+32,767 |
| 32 位或 64 位編譯器 | +2,147,483,647 | |||
UINT_MAX |
unsigned int 的最大值 | 16 位編譯器 | +65,535 或 +4,294,967,295 | ≥+65,535 |
| 32 位或 64 位編譯器 | +4,294,967,295 | |||
LONG_MIN |
long int 的最小值 | 16 位或 32 位編譯器 | −2,147,483,648 | ≤−2,147,483,647 |
| 64 位編譯器 | −2,147,483,648 或 −9,223,372,036,854,775,808 | |||
LONG_MAX |
long int 的最大值 | 16 位或 32 位編譯器 | +2,147,483,647 | ≥+2,147,483,647 |
| 64 位編譯器 | +2,147,483,647 或 +9,223,372,036,854,775,807 | |||
ULONG_MAX |
unsigned long int 的最大值 | 16 位或 32 位編譯器 | +4,294,967,295 | ≥+4,294,967,295 |
| 64 位編譯器 | +4,294,967,295 或 +18,446,744,073,709,551,615 | |||
LLONG_MIN |
long long int 的最小值 | −9,223,372,036,854,775,808 | ≤−9,223,372,036,854,775,807 | |
LLONG_MAX |
long long int 的最大值 | +9,223,372,036,854,775,807 | ≥+9,223,372,036,854,775,807 | |
ULLONG_MAX |
unsigned long long int 的最大值 | +18,446,744,073,709,551,615 | ≥+18,446,744,073,709,551,615 | |
- C 指南--2.5 limits.h,訪問時間:2006 年 9 月。