本课直接建立在“1.3 -第一个变量的第一个变量”部分的材料上。
在上一节中的变量上,我们讨论了一个事实,即变量是一个可以用来存储信息的内存的名称的事实。简要概括起来,计算机的随机存取存储器(RAM),可供程序使用。当一个变量被定义时,该变量的一块内存被设置为该变量。
内存的最小单位是一个二进制数字(位),它可以容纳1或0的值。你可以想象一个有点像一个传统的光开关-无论是光关闭(0),或它是(1)。没有在之间。如果你是看一个随机片段的内存,你会看到的是…011010100101010…或一些组合。存储器被组织成被称为地址的顺序单位。类似于如何一个街道地址可以用来找到一个给定的房子在街道上,内存地址,使我们能够找到和访问内存的内容在一个特定的位置。也许令人惊讶的是,在现代计算机中,每一位都没有得到它自己的地址。最小的可寻址存储器单元是一组8位,称为一个字节。
1
2
3
4
5
6
7
int a, double b; // wrong (compiler error)
int a; double b; // correct (but not recommended)
// correct and recommended (easier to read)
int a;
double b;
下面的图片显示了一些连续的内存地址,以及相应的数据字节:
因为一台计算机上的所有数据只是一个序列,我们使用一个数据类型(通常称为“类型”)来告诉我们如何以某种有意义的方式解释内存的内容。您已经看到了数据类型的一个例子:整数。当我们声明一个变量为整数时,我们告诉编译器“这个变量地址的内存将被解释为一个整数”。
当您将一个值赋给数据类型时,编译器和处理器会将您的值的编码的细节转换为数据类型的适当的位序列。当你要求你的价值回来,你的号码是“重组”从内存中的位序列。
还有很多其他的数据类型的C++除了整数,其中我们将不久。作为速记,我们通常指的是一个变量的“数据类型”作为它的“类型”。
基本数据类型
C++有一定的数据类型的内置支持。这些被称为基本数据类型(在C++规范),但往往是非正式地称为基本类型,原始类型或内置类型。
这里有一个基本数据类型的列表,其中一些已经看到:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
int main()
{
// all variable up top
int x;
int y;
// then code
using namespace std;
cout << "Enter a number: ";
cin >> x;
cout << "Enter another number: ";
cin >> y;
cout << "The sum is: " << x + y << endl;
return 0;
}