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++基本数据类型(转)的更多相关文章

  1. JavaScript 中的数据类型

    Javascript中的数据类型有以下几种情况: 基本类型:string,number,boolean 特殊类型:undefined,null 引用类型:Object,Function,Date,Ar ...

  2. JS 判断数据类型的三种方法

    说到数据类型,我们先理一下JavaScript中常见的几种数据类型: 基本类型:string,number,boolean 特殊类型:undefined,null 引用类型:Object,Functi ...

  3. Python高手之路【二】python基本数据类型

    一:数字 int int(整型): 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位系统上,整数的位数为64位,取值 ...

  4. UniqueIdentifier 数据类型 和 GUID 生成函数

    UniqueIdentifier 数据类型用于存储GUID的值,占用16Byte. SQL Server将UniqueIdentifier存储为16字节的二进制数值,Binary(16),按照特定的格 ...

  5. SQL Server常见数据类型介绍

    数据表是由多个列组成,创建表时必须明确每个列的数据类型,以下列举SQL Server常见数据类型的使用规则,方便查阅. 1.整数类型 int 存储范围是-2,147,483,648到2,147,483 ...

  6. 由js apply与call方法想到的js数据类型(原始类型和引用类型)

    原文地址:由js apply与call方法想到的js数据类型(原始类型和引用类型) js的call方法与apply方法的区别在于第二个参数的不同,他们都有2个参数,第一个为对象(即需要用对象a继承b, ...

  7. python 数据类型 ----字典

    字典由一对key:value 组成的 python中常用且重量级的数据类型 1. key , keys, values 字典由一对key:value 组成的 python中常用且重量级的数据类型 1. ...

  8. SQL数据类型

    1.Character 字符串: 数据类型 描述 存储 char(n) 固定长度的字符串.最多8,000个字符. n varchar(n) 可变长度的字符串.最多8,000个字符.   varchar ...

  9. 跟着老男孩教育学Python开发【第二篇】:Python基本数据类型

    运算符 设定:a=10,b=20 . 算数运算 2.比较运算 3.赋值运算 4.逻辑运算 5.成员运算 基本数据类型 1.数字 int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**3 ...

  10. 我的MYSQL学习心得(二) 数据类型宽度

    我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...

随机推荐

  1. python collections module's defaultdict

    Collections is a high-performance container datatypes. defaultdict objects class collections.default ...

  2. 关于OpenGL Framebuffer Object、glReadPixels与离屏渲染

    最近写论文需要用到离屏渲染(主要是因为模型太大普通窗口绘制根本做不了),于是翻阅了红宝书查了下相关api和用法.中文版的红宝书可读性有点差,很多地方翻译地晦涩,但好歹读起来比较快,主要相关章节为第8章 ...

  3. 【iBatis】使用resultMap配置返回结果时报错“列名无效”

    使用iBatis联查DEPT.EMP两张表时 采用如下结构 <resultMap id="find_departmentMap" class="com.dto.De ...

  4. Rector模式

    讲到高性能IO绕不开Reactor模式,它是大多数IO相关组件如Netty.Redis在使用的IO模式,为什么需要这种模式,它是如何设计来解决高性能并发的呢? 最最原始的网络编程思路就是服务器用一个w ...

  5. krpano之小地图

    效果: 点击地图按钮时,小地图移入,再次点击时移出. 地图上显示表示场景位置的坐标点,和可控制场景观看方向的雷达区. 插件: radar.js(plugins) radar.swf(plugins) ...

  6. Arduino UNO 键盘记录器中时钟接到2口或3口,其它接口不行。马上就要放弃了。要修改例子中时钟的引脚。

  7. 编译boost.log模块遇到的一些问题

    线上日志用到的是日志库,在全局有一个锁,导致在高并发的时候,容易因为锁竞争问题导致时延.在某些情况下,会因为同一个用户,同时访问某个变量,导致读写冲突使线上服务整体core掉(考虑到请求的间隔,为了应 ...

  8. 网络编程基础之C/S架构和TCP/IP协议

    一.何谓C/S架构 C指的是client(客户端软件),S指的是Server(服务端软件),既然我们的的标题是网络编程基础, 那我们就一起来学习怎样写一个C/S架构的软件,实现服务端与客户端软件基于网 ...

  9. git回滚到某个commit 上和 返回最新的版本git

    1. 代码回退 首先你要用git log 查看你要回到的那个本版, 然后用 git reset --hard HEAD^ 回退到上个版本 git reset --hard commit_id 退到/进 ...

  10. 五分钟带你入门TensorFlow

    TensorFlow是Google开源的一款人工智能学习系统.为什么叫这个名字呢?Tensor的意思是张量,代表N维数组:Flow的意思是流,代表基于数据流图的计算.把N维数字从流图的一端流动到另一端 ...