32位机与64位机数据大小

Posted 用代码创造价值

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了32位机与64位机数据大小相关的知识,希望对你有一定的参考价值。

32位机与64位机数据大小


32位编译器:

      char :1个字节
      char*(即指针变量): 4个字节(32位的寻址空间是2^32, 即32个bit,也就是4个字节。同理64位编译器)
      short int : 2个字节
      int:  4个字节
      unsigned int : 4个字节
      float:  4个字节
      double:   8个字节
      long:   4个字节
      long long:  8个字节
      unsigned long:  4个字节
 
  64位编译器:
 
      char :1个字节
      char*(即指针变量): 8个字节
      short int : 2个字节
      int:  4个字节
      unsigned int : 4个字节
      float:  4个字节
      double:   8个字节
      long:   8个字节
      long long:  8个字节
      unsigned long:  8个字节

我要说几点:

我们一把情况下说,在设计关于底层的API的时候,最喜欢使用的就是char类型!
原因很简单,就是,字节是八位,而且,几乎在所有的机器编程里,一个字节是程序员最喜欢接受的最小的存储单位(而不是bit,位实在是太小了,不太实用!)

根据上面的数据,我们也知道这么几点:
  • 在32位核64位的计算机里:指针是不一样的,是以位数为基础的
  • long核unsigned long也是不一样的,他是根据机器的最大的字节来算的






以上是关于32位机与64位机数据大小的主要内容,如果未能解决你的问题,请参考以下文章

32位机与64位机指针占用空间不同

32位机和64位机下面各类型sizeof的大小

16位,32位,64位机数据类型所占的字节数

64位win7系统如何安装MySQL

64位机的pl/sql不安装32位oracle的连接方式

苹果产品时间发布表统计(iPhoneiPad),以及32位和64位机的说明