一天一小步,简单不墨迹理解C中常量是

字符型常量有两种表示形式,即普通字符和转义字符。

(1)普通字符。即可显示字符。例如:

′a′,′A′,′#′,′′,′0′

(2)转义字符。即以反斜杠“\”开头,后跟一个字符或一个字符的ASCII编码值的办法来表示一个字符,这种表示方法表示其后的字符具有特殊含义。

在“\”后跟一个字符常用来表示一些控制字符。例如:′\n′可以用来表示换行符。

若“\”后是一个字符的ASCII编码值,则必须是一个字符的ASCII编码值的八进制数形式或十六进制数形式,其取值范围必须在0~之间,表示形式为:

\ddd

\xhh

其中ddd表示三位八进制数、xhh表示两位十六进制数。例如:′\′,′\x41′,都可以用来表示字符“A”。

普通字符用来表示可显示字符;转义字符可用来表示任一字符,对于控制字符或不可以从键盘上输入的字符,只能用转义字符来表示;但对于可显示字符,直接用单引号括起来,更加直观一些。

超实用性的Python零基础入门到进阶视频源码淘宝¥2购买已下架

在C++中,已预定义了具有特殊含义的转义字符,如表2.2所示。

表2.2 C++中的转义字符

现在,以一个实例来说明转义字符的应用。

分析下面程序运行结果,程序名为example2_1.cpp。

分析:第4行语句中,“================”会原样输出,然后遇到“\n”,它的作用是换下一行,就是将当前位置移到下一行的开头。第5行语句先在第1列输出“姓名”,然后遇到“\t”,它的作用是“跳格”,即跳到下一个制表位置,一个制表区占8列,那么下一个制表位置从第9列开始,所以在第9列输出“性别”,下面是“\n”,即“换行”,就是将当前位置移到下一行的开头。第6行语句先在第1列输出“张三”,后面是“\t”,使当前位置跳到第9列,第9列输出“男”,最后为“\n”,进行换行,将当前位置移到下一行的开头准备下一次输出。第7、第8行同样道理,注意第8行在输出完成后会遇到转义字符“\a”,它的作用是响铃一声。最终运行结果如图2.2所示。

图2.2 运行结果

注意:对于反斜杠、单引号、双引号字符,它们尽管既可显示,又可从键盘上输入,但由于它们在C++中有特殊的用法(“\”表示转义字符,“′”表示字符常量,“′”表示字符串常量),所以当它们作为字符型常量出现时,也要用转义字符形式表示。例如,双引号字符表示为′\′。

4)字符串型常量

用一对双引号括起来的0个或多个字符称字符串型常量(简称字符串)。例如:

How do you do!,你好!,a,,C++program、A、It is an integer.\n等。

字符串中的字符可以是能显示的字符,也可以是转义字符,如回车换行符“\n”。

注意:

C++中字符常量与字符串常量是不相同的,字符常量和字符串常量的区别如下:

(1)字符常量只能为单个字符,字符串常量通常为多个字符。

(2)分界符不同,字符常量为单引号,字符串常量为双引号。

(3)字符串常量的结尾有一个“字符串结束标志”,而字符常量没有。

在C++中,字符串常量实际上是一个数组,组成数组的字符除了给出的字符以外,还会在每一个字符串结尾自动加上一个“字符串结束标志”,以便系统据此判断字符串是否结束。C++规定以字符‘\0’(空操作)作为字符串结束标志。例如:字符串abc实际上是由字符′a′,′b′,′c′,′\0′组成。

又例如:a与′a′不同,前者是一个字符串常量,而后者是一个字符型常量;两者在内存中的存储方式也不同,前者占用两个字节(′a′与′\0′),而后者只占用一个字节′a′。

当双引号要作为字符串中的一个字符时,必须采用转义字符表示法;而单引号要作为字符串中的一个字符时,可直接出现在字符串中,也可以采用转义字符表示法。例如:

\ChinaBeijing\,Mike′s,Mike\′s

说明:不能将一个字符串常量赋值给一个字符变量。例如:

chara; ∥声明一个字符型变量a

a=a; ∥错误,不能赋值,因为a是一个字符串常量

5)符号型常量

C++程序设计中,如果经常需要用到某个常量数据,为了增加程序的可读性和可维护性,可以用一个标识符来表示一个常数,这就是符号常量。在C++中用两种方法定义符号常量:一种是使用编译预处理命令;另一种是使用C++中的常量说明符const。

(1)用预处理命令#define语句定义符号常量

一般格式为:

#define常量名 常量值

例如:

#defineSTU_NUM40 ∥定义符号常量STU_NUM为40

注意:#define语句的最后不允许加分号。

(2)用常量说明符const定义符号常量

一般格式为:

const数据类型 符号常量名=常量值

例如:

constfloatpi=3.; ∥定义了符号常量pi的类型为float型,其值为3.

说明:在程序中,符号常量必须先定义后引用,并且符号常量在程序中只能引用,不能改变其值。

6)布尔型常量

布尔常量又称逻辑常量,只包含两个值。用常量false表示逻辑假,用常量true表示逻辑真。

好了,本文到此结束。如果对编程、计算机、程序员方面感兴趣的话,欢迎私信联系我,随时交流!点个


转载请注明:http://www.aierlanlan.com/cyrz/1850.html