C语言中的转义字符-创新互联
目录
创新互联公司是一家专注于成都网站建设、网站制作与策划设计,竹溪网站建设哪家好?创新互联公司做网站,专注于网站建设十载,网设计领域的专业建站公司;建站业务涵盖:竹溪等地区。竹溪做网站价格咨询:135182197921.什么是转义字符?
2.转义字符都有什么功能?
3.转义字符的应用举例
1.调整输出格式
2.输出一些特殊的字符
3.输出文件路径
4.一个有趣的小测试
1.什么是转义字符?
转义字符是一种特殊的字符常量.转义字符以反斜线"\"开头,后跟一个或几个字符,转义字符具有特定的含义,不同于字符原有的意义,故称“转义”字符。通过转义字符,我们可以键入一些我们键盘上面没有的字符,用“\”加数字(一般是8进制数字)来表示所有ASCII码表对应的字符
2.转义字符都有什么功能?那么都有什么转义字符呢,以及它们都有什么功能呢?下表列出了一些常见的转义字符以及其对应的功能:
转义字符 | 功能 |
\? | 在书写连续多个问号时使用,防止被解释为三字母词 |
\' | 表示字符常量‘ |
\" | 表示一个字符串内部的双引号 |
\\ | 表示一个反斜杠,防止被解释为一个转义序列符 |
\a | 警告字符,蜂鸣 |
\b | 退格符 |
\f | 进纸符(换页符) |
换行符 | |
\r | 回车 |
\t | 水平制表符 |
\v | 垂直制表符 |
\ddd | ddd表示1-3个8进制数字。如\120 |
\xdd | dd表示1-2个16进制数字。如\x20 |
在我们编程的时候,为了输出美观,经常会使用'\n','\t'等等转义字符来控制输出格式,使得输出的内容显得井然有序,美观。
2.输出一些特殊的字符当一个字符串中有些字符具有特殊含义时,而我们又想要将它们打印出来,就可以使用到转义字符,当我们想要输出下面三个字符串时:
printf("hello"world\n"); //输出 hello"world
printf("abcd\ndef\n"); //输出 abcd\ndef
printf("hello\0world\n"); //输出 hello\0world
显然,直接这样打印输出并无法达到我们想要的效果,因为编译器不会把 ”,\n和\0当作普通字符来处理。此时,我们就可以在这些具有特殊功能的字符前加上一个‘\’,使其意义转变,让编译器解释为普通字符,如下:
printf("hello\"world\n"); //输出 hello"world
printf("abcd\\ndef\n"); //输出 abcd\ndef
printf("hello\\0world\n"); //输出 hello\0world
这个时候编译运行,程序就会输出我们想要的结果:
3.输出文件路径有时候我们会想在屏幕上打印一个文件的路径,比如说:c:\c_language\text_12_3\add.c
如果我们直接进行打印,路径中的\t与\a会被编译器当作转义字符,使最终打印的结果不理想:
这时我们可以在‘\’前再加上一个‘\’, 防止它被解释为一个转义序列符,就可以输出我们想要的内容:
4.一个有趣的小测试关于转义字符的功能还有很多,这里就不一一赘述了,剩下的留给读者自行感受!
看了这么多内容,让我们来做一道测试题练练手吧:
int main()
{
printf("%d", strlen("c:\text\628\text.c"));
return 0;
}
猜一猜结果是什么,18?17?还是其他数字?
编译运行程序可以得出答案:
字符串的长度为14,14个字符分别为:
‘c’,‘:‘,‘\t’,‘e’,‘x’,‘t’,'\62','8‘,’\t’,‘e’,‘x’,‘t’,'.',‘c’
其中,由于8不属于八进制,因此‘\62’和‘8’为两个字符 。怎么样,是不是和你想的答案一样!
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
标题名称:C语言中的转义字符-创新互联
当前路径:http://myzitong.com/article/jjcdj.html