c、c++ 基本数据类型所占用的字节数量

前言

  提及c、c++ 中数据基本数据类型占用字节个数,就不得不说计算机的发展的四个阶段。c++

  • 第一代:20世纪50年代,主要采用真空电子管制造计算机
  • 第二代:20世纪50年代末期,出现了以晶体管为主要元件的第二代计算机。
  • 第三代:中小规模集成电路计算机,表明机型1964年IBM公司推出IBM360系列计算机并垄断了60%~70%的国际市场,它的出现标志着计算机进入第三代。
  • 第四代:随着大规模集成电路和微处理器的出现,计算机进入第四代。就是目前各位同窗所使用的电脑和手机。

问题来了

  随着计算机的发展,操做系统的位数也在增长,从8位、16位、32位、64位。那么问题也就来了,在不一样位数的操做系统中声明的数据类型所占用的字节数量是不同的。准确的说是编译环境不一样形成的,若是你使用的是64位操做系统,编译环境是32位的那么就按照32位的方式去计算。编辑器

答案来了

  16位编辑器中操作系统

  • int 占两个字节,范围 -32768 ~ 32767 (-2^15 ~ 2^15-1);
  • long 占四个字节,范围 -2147483648 ~ 2147483647 (-2^31 ~ 2^31-1);

  32位编辑器中编译

  • int 占四个字节,范围 -2147483648 ~ 2147483647(-2^31 ~ 2^31-1); 和long同样。
  • long 占四个字节,范围 -2147483648 ~ 2147483647(-2^31 ~ 2^31-1);

  64位编辑器中class

  • int 占四个字节,范围 -2147483648 ~ 2147483647 (-2^31 ~ 2^31-1); 和long同样。
  • long 占八个字节,范围 -9223372036854775808 ~ 9223372036854775807(-2^63 ~ 2^63-1);

  short、float、double、chart不收编辑器的影响数据类型

  • short 占二个字节, 范围 -32768 ~ 32767 (-2^15 ~ 2^15-1);。
  • float 占四个字节, 范围 -3.4 * 10^38 ~ -3.4 * 10^38 (保留七个有效数字)。
  • double 占八个字节,范围 -1.7* 10^308 ~ -1.7 * 10^308 (保留十五个有效数字)。
  • chart 占一个字符位置,范围 -128 ~ 127 (-2^7 ~ 2^7-1)。

总结

  求知的过程任重而道远,但愿各位同窗能在求知的路上越走越远。若是我那里有错误的地方请同窗们指出,欢迎你们留言探索。float

相关文章
相关标签/搜索