常量 (Constants ) 一个常量(constant)是一个有固定值的表达式。 字(Literals) 字是用来在程序源码中表达特定的值。在前面的内容中我们已经用了很多的字来给变量赋予特定的值。例如: a = 5; 这句代码中5就是一个字常量。 字常量(literal constant)可以被分为整数(Integer Numbers), 浮点数(Floating-Point Numbers),字符(Characters)和字符串(Strings)。 整数(Integer Numbers) 1776 707 -273 他们是整型常数,表示十进制整数值。注意表示整型常数时我们不需要些引号(quotes ("))或任何特殊字符。毫无疑问它是个常量:任何时候当我们在程序中写1776,我们指的就是1776这个数值。 除十进制整数另外, C++还允许使用八进制(octal numbers)和十六进制(hexadecimal numbers)的字常量(literal constants)。如果我们想要表示一个八进制数,我们必须在它前面加上一个0字符(zero character),而表示十六进制数我们需要在它前面加字符0x (zero, x)。例如以下字常量(literal constants)互相等值: 75 // 十进制 decimal 0113 // 八进制 octal 0x4b // 十六进制 hexadecimal 所有这些都表示同一个整数: 75 (seventy five) ,分别以十进制数,八进制数和十六进制数表示。 像变量一样,常量也是有数据类型的。默认的整数字常量的类型为int型。我们可以通过在后面加字母u或l来迫使它为无符号(unsigned)的类型或长整型(long)。 75 // int 75u // unsigned int 75l // long 75ul // unsigned long 这里后缀u和l可以是大写,也可以是小写。 浮点数(Floating Point Numbers) 浮点数以小数(decimals)和/或指数幂( exponents)的形式表示。它们可以包括一个小数点,一个e字符(表示"by ten at the Xth height",这里X是后面跟的整数值) ,或两者都包括。 3.14159 // 3.14159 6.02e23 // 6.02 x 10^1023 1.6e-19 // 1.6 x 10^-19 3.0 // 3.0 以上是包含小数的以C++表示的4个有效数值。第一个是PI,第二个是Avogadro数之一,第三个是一个电子(electron)的电量(electric charge)(一个极小的数值) – 所有这些都是近似值。最后一个是浮点数字常量表示数3。 浮点数的默认数据类型为double。如果你想使用float或long double类型,可以在后面加f或l后缀,同样大小写都可以: 3.14159L // long double 6.02e23f // float 字符和字符串(Characters and strings) 此外还有非数字常量,例如: 'z' 'p' "Hello world" "How do you do?" 前两个表达式表示单独的字符(character),后面两个表示由若干字符组成的字符串(string) 。注意在表示单独字符的时候,我们用单引号(single quotes (')),在表示字符串或多于一个字符的时候我们用双引号(double quotes ("))。 当以常量方式表示单个字符和字符串时,必须写上引号以便把他们和可能的变量标识或保留字区分开,注意以下例子: x 'x' x 指一个变量名称为 x, 而'x'指字符常量'x'。 字符常量和字符串常量各有特点,例如escape codes,这些是除此之外无法在源程序中表示的特殊的字符,例如换行符 newline (\n) 或跳跃符tab (\t)。所有这些符号前面要加一个反斜杠inverted slash (\)。这里列出了这些escape codes:
|