第二章 变量和基本类型

      类型是所有程序的基础。类型告诉我们数据代表什么意思以及可以对数据执行哪些操作。

      C++ 语言定义了几种基本类型:字符型、整型、浮点型等。C++ 还提供了可用于自定义数据类型的机制,标准库正是利用这些机制定义了许多更复杂的类型,比如可变长字符串 stringvector 等。此外,我们还能修改已有的类型以形成复合类型。本章介绍内置类型,并开始介绍 C++ 如何支持更复杂的类型。

      类型确定了数据和操作在程序中的意义。我们在第一章已经看到,如下的语句

i =i +j;

      有不同的含义,具体含义取决于 ij 的类型。如果 ij 都是整型,则这条语句表示一般的算术“+”运算;如果 ij 都是 Sales_item 对象,则这条语句是将这两个对象的组成成分分别加起来。

      C++ 中对类型的支持是非常广泛的:语言本身定义了一组基本类型和修改已有类型的方法,还提供了一组特征用于自定义类型。本章通过介绍内置类型和如何关联类型与对象来探讨 C++ 中的类型。本章还将介绍更改类型和建立自定义类型的方法。

2.1. 基本内置类型

  C++ 定义了一组表示整数、浮点数、单个字符和布尔值的算术类型,另外还定义了一种称为 void 的特殊类型。void 类型没有对应的值,仅用在有限的一些情况下,通常用作无返回值函数的返回类型。

  算术类型的存储空间依机器而定。这里的存储空间是指用来表示该类型的位(bit)数。C++标准规定了每个算术类型的最小存储空间,但它并不阻止编译器使用更大的存储空间。事实上,对于int类型,几乎所有的编译器使用的存储空间都比所要求的大。表 2.1 列出了内置算术类型及其对应的最小存储空间。

  

表 2.1. C++ 算术类型

Type

类型

Meaning

含义

Minimum Size

最小存储空间

bool

boolean

NA

char

character

8 bits

wchar_t

wide character

16 bits

short

short integer

16 bits

int

integer

16 bits

long

long integer

32 bits

float

single-precision floating-point

6 significant digits

double

double-precision floating-point

10 significant digits

long double

extended-precision floating-point

10 significant digits

  

原文地址:https://www.cnblogs.com/snddman/p/1679512.html