中北软院创新实验室程序员

数据类型范围

2018-03-29  本文已影响10人  HikariCP

常识

      类型                字节                         范围                   
      byte             1字节,8位              256(-128 到127)           
      bool             1字节,8位              256(-128 到127)           
      char             1字节,8位              256(-128 到127)           
      short            2字节,16位          65535( –32,768 到 32,767)        
      int              4字节,32位          4294967296( –2,147,483,648 到 2,147,483,647) 
      unsigned int     4字节,32位          4294967296(0 到 4,294,967,295)      
      long             4字节,32位          4294967296( –2,147,483,648 到 2,147,483,647)                                                                                          
      long long        8字节,64位      18446744073709551616( –9,223,372,036,854,775,808 到 9,223,372,036,854,775,807)
      float            4字节,32位          3.4E +/- 38(7 位数)            
      double           8字节,64位          1.7E +/- 308(15 位数)           

这里需要注意的是long和int的区别,看上去在范围上两者好像一样。但是这是取决于你所在的平台的。但无论什么凭条都必须遵守

[ int 至少 16 位,long int 至少 32 位,并且 sizeof(int) <= sizeof(long)」的规则。

这就类似,你觉得「爱人」和「妻子」不可能有区别,但是在日语里,这两个确实有天壤之别。我们这里都是按照数据类型在一些情况下最小范围进行罗列。

所以我们再来个表:

    类型      16位系统/字节    32位系统/字节    64位系统/字节
    char          1               1               1    
    char*         2               4               8    
    short         2               2               2    
    int           2               4               4    
    long          4               4               8
    long long     8               8               8    

我们多罗列了个unsigned int,是为了说明unsigned的情况。所有数据类型除bool,unsigned时范围变化都一致。所能表示的最大数是原来的2倍,所能表示的范围没变。

上一篇下一篇

猜你喜欢

热点阅读