
1.4 变量值的输入
引入
蒜头君:目前我的所有变量值都是在程序中固定的,如果想根据不同的输入得到不同的变量值参与运算,该如何实现呢?
花椰妹:是时候学习输入语句啦,有了输入语句,就可以使程序中的变量根据输入来赋值了。
讲解
C++中变量值除了通过赋值语句给定之外,还可以通过输入语句直接将输入的值赋值给变量。还记得刚开始学C++的时候提到的<iostream>吗?它是一个用于控制输入输出流的库,里面有一系列可以用于输入、输出的方法。下面就开始学习如何控制程序的输入。
在之前的程序中,变量的值只能通过在代码中赋值或初始化获得。那么如何让程序接收来自键盘输入的值呢?这就需要采用输入语句。

在声明了number变量之后,可以采用cin这个新工具直接获取键盘中输入的值,可以发现cin与cout的功能刚好相反。
小贴士
请注意<<和>>这两个分隔符,它们与cout和cin是两两匹配的,不能乱用。
(1)cout<<number;,表示将number顺着左尖箭头的方向给cout完成输出。
(2)cin>>number;,表示将cin获得的输入内容顺着右尖箭头的方向给到number完成输入。
在写程序的时候一定不要把它们搞混哦!
cin也可以一次性从输入中读取多个变量,类似于cout,只需要在每个变量后面加上>>分隔符就可以了。
引入
蒜头君:我想通过程序计算爸爸和妈妈手机号码数字的和,可是程序计算出来的和我自己笔算值差别好大,这是为什么呢?
花椰妹:肯定是因为越界了,int类型是放不下11位整数的,如果你一定要计算这个值,就需要学习新的数据类型。
讲解
C++语言中所有的数据类型都是有取值范围的,也就是说每个变量“盒子”都是有一定容量的。如果需要赋值的数据超过了变量“盒子”的容量,就会产生严重的错误。
例如,在用int类型存储一个手机号码时就会出现这样严重的错误。
int phone_number = 13801012345;
虽然这个手机号码被强行赋值给了变量phone_number,但是实际上这个变量值并不正确,聪明的你可以尝试输出这个变量值,看看实际值是多少。
int通常可以表示9位的整数。为了表示更大的整数,C++语言中提供了long long类型。请注意之前学习到的变量类型都是一个英文单词,而这里是由两个英文单词组成的。但是long long也是有上限的,通常可以表示19位整数。
小贴士
cin也可以一次性从输入中读取多个变量,类似于cout,只需要在每个变量后面加上>>分隔符就可以了。
练习
目前已经学习了一些C++语言中的概念,现在将一些C++语言中的概念和它们的用途罗列了出来。回想前面学习的知识,并将下面的概念和对应的用途一一连接起来。

讲解
(1)main函数——程序运行的默认入口。
(2)int——用于声明存储整数的变量。
(3)cin——用于输入。
(4)cout——用于输出。
(5)double——用于声明存储浮点数的变量。
(6)#include——用于引入文件。
知识点
(1)cin:代表标准输入,可以从设备键盘取得数据保存到变量中,通常与>>连用。
(2)long long:64位长整数类型,一个long long占用8字节,即64比特,数据范围为-9223372036854775808~+9223372036854775807。
拓展阅读
消失的A盘
使用Windows操作系统的同学可能会对C盘、D盘比较熟悉,但同学们有没有发现,好像没有A盘和B盘,这是怎么回事呢?
其实在早些年A盘和B盘是存在的,那个时候还没有硬盘、U盘这样的存储设备,数据存储是依靠软盘的,A盘和B盘就是软盘的驱动器。在主机上插入软盘,就可以打开A盘读取软盘中的内容了。随着软盘技术的发展,A盘被设定为3.5英寸(1英寸=2.54cm)软盘的驱动器,一张3.5英寸的软盘可以读写1.44 MB的数据,B盘则是5.25英寸软盘的驱动器。随着时间的推移,5.25英寸软盘退出了历史的舞台,B盘也就消失了。
再随着硬盘及移动存储器,如光盘、U盘(全称USB闪存盘)技术的发展,以及人们所需的存储空间的增大,软盘就不再适用了。想一下,我们现在想要交个作业,如PPT,动辄一个文件就是几兆、几十兆,更不用提如果想要交个视频,视频大小达到几千兆,需要这么大的存储空间,那只能存储1.44 MB数据的软盘可不就没办法使用了吗?所以大家现在的计算机上都找不到A盘了,也找不到软盘的插口了,软盘已经成为历史。不过如果大家问问自己的父母或找到一些较为古老的计算机,还是可以了解到软盘的样子的。