第2章 变量和基本类型

  数据类型是程序的基础:它告诉我们数据的意义以及我们能在数据上执行的操作。

  C++语言支持广泛的数据类型,它定义了几种基本内置类型(如字符、整形、浮点型等),同时也为程序员提供了自定义数据类型的机制。基于此,C++标准库定义了一些更加复杂的数据类型,如可变长字符串和向量等。

  本章将主要讲述内置类型,并带领大家初步了解C++语言是如何支持更复杂数据类型。

 

2.1 基本内置类型  

  C++定义了一套包括算术类型(arithmetic type)和空类型(void)在内的基本数据类型。其中算术类型包含了字符、整型数、布尔值和浮点数。空类型不对应具体的值,仅用于一些特殊的场合,例如最常见的是,当函数不返回任何值时使用空类型作为返回类型。

  注:arithmetic  [.erɪθ'metɪk] n.算术

2.1.1 算术类型

  算术类型分为两类:整型(intergral type,包括字符和布尔型在内)和浮点型

  算术类型的尺寸(所占的位数,bit位)在不同的机器上有所差别。下表列出了C++标准规定的尺寸的最小值,同时允许编译器赋予这些类型更大的尺寸。

  

类型含义最小尺寸
整形bool布尔类型未定义
char字符8位
wchar_t宽字符16位
char16_tUnicode字符16位
char32_tUnicode字符32位
short短整型16位
int整型16位
long长整型32位
long long长整型64位
浮点型float单精度浮点型6位有效数字
double双精度浮点型10位有效数字
long double扩展精度浮点型10位有效数字

  布尔类型(bool)的取值是真(true)或者假(false)。

  C++提供了几种字符类型,其中多数支持国际化。基本字符类型是char,一个char的空间应确保可以存放机器基本字符集中任意字符对应的数字值,换句话说,一个char的大小和一个机器字节一样。其他字符类型用于扩展字符集,如wchar_t、char16_t、char32_t。wchar_t类型用于确保可以存放机器最大扩展字符集中任意一个字符,类型char16_t和char32_t则为Unicode字符集服务(Unicode是用于表示所有自然语言中字符的标准)。

  C++语言规定,int >= short,long >= int,long long >= long。其中数据类型long long为C++11中新定义的。

  浮点型可以表示单精度、双精度和扩展精度值。C++标准指定了一个浮点数有效位数的最小值,然而大多数编译器都实现了更高的精度。通常,float以1个字(32bit)来表示,double以2个字(64bit)来表示,long double以3或者4个字(96或128bit)来表示。一般来说,类型float和double分别有7和16个有效位;类型long double则常常被用于有特殊浮点需求的硬件,它的具体实现不同,精度也各不相同。

转载于:https://www.cnblogs.com/chinapioneer/p/6671241.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值