3.2.2 常量
与变量可以用在程序中表达那些可能会发生变化的数据量相对应地,在C++中,我们用常量来表达那些始终保持不变的数据量。简单 来讲,就是程序中直接使用的数值、字符、字符串以及const关键字修饰的常变量等。大多数时候,常量只需要被读取一次,所以它没有名字,无须定义而可以 直接使用。又因为其数据只能读取,不能修改,所以通常用来给一个变量赋值或者直接参与运算。例如:
// 用常量180对变量nHeight赋值 nHeight = 180; // 直接使用常量进行计算 fArea = fR * fR * 3.1415926;
这里的“180”和“3.1415926”就是两个常量,分别用来对变量nHeight进行赋值和参与乘法运算。这样的常量只能使用一次,当完成赋值操作和乘法运算后,这两个常量也就不再有意义了。
C++中的常量主要包括数值常量(整型常数、浮点型常数)、字符常量、字符串常量。
1. 整型常数
整型常数就是以文字形式出现的整数。整型常数的表示形式最常见的是十进制,也可以根据需要采用八进制或十六进制表示。在程序中,我们可以根据数字的前缀来区分各种进制的整数。
l 十进制整数:没有前缀,例如0、123、-1等。
l 八进制整数:以0为前缀,数字不包含8和9。例如0123、-022等。
l 十六进制整数:以0x或0X为前缀,数字除了0~9十个数字之外,还包括A~F六个英文字母字符。例如0x123、-0X2等。
在程序中,我们可以直接使用这三种方式来表示某个整数数值:
nHeight = 173; // 十进制常数 nHeight = 0255; // 八进制常数 nHeight = 0xAD; // 十六进制常数
上面的代码分别采用不同进制形式的常数对一个变量赋值。虽然这些常数的表现形式不同,但是它们所代表的数值都是173。
2. 浮点型常数
浮点型常数就是以文字形式出现的浮点数,也就是我们通常所说的小数。浮点数有两种表示形式:小数形式和指数形式。小数形式就是 我们通常的小数书写形式,由数字和小数点构成,如1.0、0.1、.123等。而指数形式则是用科学记数法,将一个浮点数表示为一个小数与10的多少次方 的乘积的形式。当一个浮点数较大或者较小时,使用指数形式来表示浮点数会更