分享方式:


C 和 C++ 整數限制

Microsoft 特定的

下表列出 C 和 C++ 中整數類型的限制。 這些限制定義于 C 標準標頭檔中 <limits.h> 。 C++ 標準程式庫標頭 <limits> 包含 <climits> ,其中包含 <limits.h>

Microsoft C 也允許大小整數變數的宣告,這些變數是大小為 8-、16-、32 或 64 位的整數類型。 如需 C 中大小整數的詳細資訊,請參閱 大小整數類型

整數常數的限制

常數 意義
CHAR_BIT 不是位元欄位之最小變數中的位元數目。 8
SCHAR_MIN 變數類型為 signed char 的最小值。 -128
SCHAR_MAX 變數類型為 signed char 的最大值。 127
UCHAR_MAX 變數類型為 unsigned char 的最大值。 255 (0xff)
CHAR_MIN 變數類型為 char 的最小值。 -128 (如果使用 /J 選項則為 0)
CHAR_MAX 變數類型為 char 的最大值。 127 (如果使用 /J 選項則為 255)
MB_LEN_MAX 多位元組字元中的位元組數目上限。 5
SHRT_MIN 變數類型為 short 的最小值。 -32768
SHRT_MAX 變數類型為 short 的最大值。 32767
USHRT_MAX 變數類型為 unsigned short 的最大值。 65535 (0xffff)
INT_MIN 變數類型為 int 的最小值。 -2147483647 - 1
INT_MAX 變數類型為 int 的最大值。 2147483647
UINT_MAX 變數類型為 unsigned int 的最大值。 4294967295 (0xffffffff)
LONG_MIN 變數類型為 long 的最小值。 -2147483647 - 1
LONG_MAX 變數類型為 long 的最大值。 2147483647
ULONG_MAX 變數類型為 unsigned long 的最大值。 4294967295 (0xffffffff)
LLONG_MIN 變數類型為 long long 的最小值。 -9,223,372,036,854,775,807 - 1
LLONG_MAX 變數類型為 long long 的最大值。 9,223,372,036,854,775,807
ULLONG_MAX 變數類型為 unsigned long long 的最大值。 18,446,744,073,709,551,615 (0xffffffffffffffff)

如果值超過最大的整數表示,Microsoft 編譯器會產生錯誤。

END Microsoft Specific

另請參閱

C 整數常數