C++中的基本数据类型

 

  C++中定义了一组表示整数、浮点数、单个字符和布尔值的算术类型(arithmetic type)。

  另外还定义了一种叫做void的特殊类型。void类型没有对应的值,仅用在有限的一些情况下,通常用作无返回值函数的返回类型。

 

  算术类型的存储空间依机器而定。这里的存储空间是指用来表示该类型的二进制位(bit)数。

  C++标准规定了每个算术类型的最小存储空间,但它并不阻止编译器使用更大的存储空间。

  事实上,对于int类型,几乎所有的编译器使用的存储空间都比所要求的大。

  因为位数不同,这些类型所能表示的最大(最小)值也因机器的不同而有所不同。

 

C++算术类型的最小存储空间

  类型+含义+最小存储空间如下:

  bool 布尔型

  char 字符型 8位

  wchar_t 宽字符型 16位

  short 短整型 16位

  int 整形 16位

  long 长整形 32位

  float 单精度浮点型 6为有效数字

  double 双精度浮点型 10位有效数字

  long double 扩展精度浮点型 10位有效数字

 

整形

  表示整数、字符和布尔值的算术类型合称为整形(integral type)。

  通常将8位的块作为一个字节,32位或4个字节作为一个字(word.

  一般的,short类型为半个机器字(word)长,int类型为一个机器字长,而long类型为一个或两个机器字长(在32位机器中int类型和long类型通常字长是相同的)。

  bool类型表示true和false。可以将算术类型的任何值赋给bool对象。

  0值算术类型代表false,其他任何非零的值都代表true

符号

  除bool类型外,整形可以是带符号的(signed)也可以是无符号的(unsigned)。

  无符号类型只能表示大于等于0的数,而带符号整形可以表示正数和负数。

  整形int,short和long都默认为带符号型

  要获得无符号型则必须指定该类型为unsigned。比如unsigned long。

  unsigned int 可以简写为unsigned。

 

浮点型

  类型float、double和long double分别表示单精度浮点数、双精度浮点数和扩展精度浮点数。

  一般float用一个字(32位)来表示,double类型用两个字(64位来表示),long double类型用三个或四个字(96或128位)来表示。

  float型只能保证6位有效数字,而double型至少可以保证10位有效数字。

 

参考资料

  《C++ Primer中文第四版》

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值