这节内容比较多,我们来详细地讨论一下C++里面的数据类型和运算符。
(1)变量
- 兵马未动,粮草先行。在进行运算或者赋值之前,要先声明一下变量,也就是需要进行赋值或者运算的对象,我们来简单地讨论一下变量。
int apples;
- 这里的apples就是一个变量。(但还没对其进行赋值)
- 关于变量的命名
- 注意以下几点就可以了:
- (1)名称中必须是字母,数字或者下划线(_),但在现在的版本中用中文定义变量也是可行的。比如可以这么写:int 苹果;
- (2)名称的第一个字符不可以是数字。
- (3)名称区分大小写,比如Apple和apple是完全不同的变量。
- (4)不能将C++关键字作为名称,比如cout,cin不可以作为变量。
- (5)尽量使用专业性的单词来定义变量,比如对于苹果,定义apples,或者apples_fruit,减少使用单个字母来定义变量,比如只用a来定义苹果,这是不太合适的。对于程序员来说,用下划线来定义变量的用法更多。
- 关于赋值
cin >> apples;//c++式赋值
scanf("%d",&apples);//c式赋值(需要<stdio.h>头文件)
- 以上就是赋值的方式。当然,以后还会讲到getline()和cin.get()等的赋值方式。
(2)数据类型
1.整型
-
整型就是指整数,就是包括没有小数的部分的数字,如2,312,-221,0等。整型包括以下几类。(位(bit)是计算机内存的基本单位)
-
而计算机和我们人不一样,计算机储存的数字是有最大限度的,若超过,则会显示nan。我们可以编写一个程序来测试一下。
-
由于int是整数类型的,所以它对应最小的数也就是-2147483647。(把上面代码中的MAX改为MIN即可验证)
-
shout类型的数我们很少用到,而int很常见。另外,表中还有一种类型没有打出来,它就是long long类型的数。long long是C++11新推出来的一种标准。它最大甚至可以储存整个宇宙的恒星数目。
-
我们有时候也会好奇这些数据类型的所占字节长度,所以,我们新引入一种运算符:sizeof。它可以返回类型或者变量的长度,单位为字节。下面请看程序:
-
可以看出,我们常用的int类型占4个字节,比short多了一倍,而longlong类型则为int类型的两倍。注意,使用sizeof的时候,要把变量放入括号内。像INT_MAX类型的符号常量,称为宏,这个以后再说。
无符号类型 -
还有一种类型叫无符号类型。它可以增大变量使其可以储存更大的值。例如,short表示的范围为-32767到+32767,则其无符号的版本表示的范围为0-65535.无符号类型广泛用于数值不为负时,要创建无符号类型,在之前的声明前加上关键字unsigned即可。(注意,unsigned本身就是unsigned int的缩写)
-
这个程序很明显的向我们展示了符号整型超过限制(上溢或下溢)时的出错行为,也就是说,这些整型变量的行为类似于汽车的里程表,越过限度就会为范围另一端的取值。这是我们需要注意的。
侵删