您好,欢迎来到纷纭教育。
搜索
您的当前位置:首页C语言中的转义字符

C语言中的转义字符

来源:纷纭教育


C语言中的转义字符

转义字符是C语言中表示字符的一种特殊形式。通常使用转义字符表示ASCII码字符集中不可打印的控制字符和特定功能的字符,如用于表示字符常量的单撇号('),用于表示字符串常量的双撇号(\")和反斜杠(\\)等。转义字符用反斜杠\\后面跟一个字符或一个八进制或十六进制数表示。表2-4给出了C语言中常用的转义字符。

字符常量中使用单引号和反斜杠以及字符常量中使用双引号和反斜杠时,都必须使用转义字符表示,即在这些字符前加上反斜杠。

在C程序中使用转义字符\\ddd或者\\xhh可以方便灵活地表示任意字符。\\ddd为斜杠后面跟三位八进制数,该三位八进制数的值即为对应的八进制ASCII码值。\\x后面跟两位十六进制数,该两位十六进制数为对应字符的十六进制ASCII码值。

使用转义字符时需要注意以下问题:

1)、转义字符中只能使用小写字母,每个转义字符只能看作一个字符。

2)、\\v垂直制表和\\f换页符对屏幕没有任何影响,但会影响打印机执行响应操作。

3)、在C程序中,使用不可打印字符时,通常用转义字符表示。

下面这个例子演示了 \\a、\\b、\、\\r,以及 \\n 的作用。其中 \\b,\ 和 \\r 的概念可以追溯到电脑仍然使用打字机作为输出设备的时候,所以对于现代的一些电脑来说,它们可能不起作用。在某些麦金托什机(Macintosh)上,它们的作用就和我们下面所说的不一样。首先请认真看一下以下程序,然后编译运行一下,看看运行结果和您想象的是否一样,然后再看后面的详细解说。

/* esc_sq.c -- 使用转义字符 */

#include

int main(void)

{

float height;

printf(\"\\aPlease enter your height: _____ cm\\b\\b\\b\\b\\b\\b\\b\\b\");

scanf(\"%f\

printf(\"\Your height is %.2f.\\rOh!\\n\

return 0;

}

第一个 printf 通常会引起一声鸣响(\\a),同时显示以下提示

Please enter your height: _____ cm

其中活跃位置(光标)在下划线的开端。活跃位置之所以会位于下划线的开端,是因为那八个 \\b 把活跃位置后退了八个位置。顺带一题,下划线 _____ 由五个 _ 构成。注意:一般来说,\\b 不会擦除前面输出的字符,但是在某些系统,\\b 却会擦除前面输出的字符,导致显示结果为 Please enter your height: 。\\a 产生的效果取决于硬件。一般来说,输出 \\a 会产生鸣响。但是在某些系统,输出 \\a 不会产生任何效果,或者仅仅显示一个特殊字符。

输入一个数后(比如输入 180.5),屏幕的显示会变成

Please enter your height: 180.5 cm

我们输入的数字取代了原来的下划线。接着我们需要按回车确定我们的输入。按下回车键后,

活跃位置会移动到下一行的开端。

第二个 printf 运行结束后,屏幕显示如下:

Please enter your height: 180.5 cm

Oh! Your height is 180.50.

这是因为 \ 使活跃位置向后移动了若干个位置(通常是八个),然后输出

Your height is 180.50. 。接着 \\r 使活跃位置返回当前行的开端,然后输出 Oh! 最后 \\n 引起换行。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- fenyunshixun.cn 版权所有 湘ICP备2023022495号-9

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务