目录
  • 整形short、int、long、long long规定如下
    • 以64位win7系统为例
    • 32位程序整形数据类型表示的范围
    • 64位程序整形数据类型表示的范围
    • 头文件climits定义了符号常量

整形short、int、long、long long规定如下

  • short至少16位
  • int至少与short一样长
  • long至少32位,且至少与int一样长
  • long long至少64位,且至少与long一样长

以64位win7系统为例

类型 字节数(byte)
char 1
short 2
int 4
long 4
long long 8

32位程序整形数据类型表示的范围

(32位与64位区别在于long 和unsigned long的字节数不同)

C数据类型 最小值 最大值
char -128 127
unsigned char 0 255
short -3 2768 3 2767
unsigned short 0 6 5535
int -21 4748 3648 21 4786 3647
unsigned int 0 42 9496 7295
long -21 4748 3648 21 4786 3647
unsigned long 0 42 9496 7295
int32_t -21 4748 3648 21 4786 3647
uint32_t -21 4748 3648 21 4786 3647
int64_t -922 3372 0368 5477 5808 922 3372 0368 5477 5807
uint64_t 0 1844 6744 0737 0955 1615

64位程序整形数据类型表示的范围

C数据类型 最小值 最大值
char -128 127
unsigned char 0 255
short -3 2768 3 2767
unsigned short 0 6 5535
int -21 4748 3648 21 4786 3647
unsigned int 0 42 9496 7295
long -922 3372 0368 5477 5808 922 3372 0368 5477 5807
unsigned long 0 1844 6744 0737 0955 1615
int32_t -21 4748 3648 21 4786 3647
uint32_t -21 4748 3648 21 4786 3647
int64_t -922 3372 0368 5477 5808 922 3372 0368 5477 5807
uint64_t 0 1844 6744 0737 0955 1615

头文件climits定义了符号常量

如下表所示:

符号常量 表示
CHAR_BIT char的位数
CHAR_MAX char的最大值
CHAR_MIN char的最小值
SCHR_MAX signed char的最大值
SCHAR_MIN signed char的最小值
UCHAR_MAX unsigned char的最大值
SHTR_MAX short的最大值
SHRT_MIN short的最小值
USHRT_MAX unsigned short的最大值
INT_MAX int的最大值
INT_MIN int的最小值
UINT_MAX unsigned int的最大值
LONG_MAX long的最大值
LONG_MIN long的最小值
ULONG_MAX unsigned long的最大值
LLONG_MAX long long的最大值
LLONG_MIN long long的最小值
ULLONG_MAX unsigned long long的最大值

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。