摘要:本文主要向大家介绍了C/C++知识点之C语言进阶—— 接续符和转义符13,通过具体的内容向大家展示,希望对大家学习C/C++知识点有所帮助。
本文主要向大家介绍了C/C++知识点之C语言进阶—— 接续符和转义符13,通过具体的内容向大家展示,希望对大家学习C/C++知识点有所帮助。
接续符的意义:
C语言中的接续符 (\) 是指示编译器行为的利器
我们来看一个案例:
1 #in 2 clud 3 e
5
6 in 7 t m 8 ain( 9 )
10 {
11 pri12 ntf13 (14 "Hello bupi\n"
15 )16 ;
17
18 ret19 urn 0;
20 }
你一眼看过去可能会认为这个不像C语言的代码,但是他的确是的,只是大量使用了接续符,在现实中不用这样使用接续符,这只是一个例子。
有人或许会问,这样一段简单的程序使用接续符就变得这样的混乱,那我们还有必要去了解接续符吗?答案是要了解
改进前的代码:
1 #include
2
3 #define SWAP(a,b) { int temp = a; a = b; b = temp; }
4
5 int main()
6 {
7 int a = 1;
8 int b = 2;
9 int c = 3;
10
11 SWAP(a,b);
12
13 printf("a = %d, b = %d\n", a, b);
14
15 SWAP(b,c);
16
17 printf("b = %d, c = %d\n", b, c);
18
19 return 0;
20 }
第三行是一个宏代码块,就是交换两个变量值,但是代码这样挤在一行,可读性并不好。
使用接续符改进后:
1 #include
2
3 #define SWAP(a,b) 4 { 5 int temp = a; 6 a = b; 7 b = temp; 8 }
9
10 int main()
11 {
12 int a = 1;
13 int b = 2;
14 int c = 3;
15
16 SWAP(a,b);
17
18 printf("a = %d, b = %d\n", a, b);
19
20 SWAP(b,c);
21
22 printf("b = %d, c = %d\n", b, c);
23
24 return 0;
25 }
使用接续符改进后的宏代码块可读性大大增加了。
接续符的使用:
编译器会将反斜杠剔除,跟在反斜杠后面的字符自动接续到前一行
在接续单词时,反斜杠之后不能有空格,反斜杠的下一行也不能有空格
接续符适合在定义宏代码块时使用
转义符的意义:C语言的转义符 (\) 主要用于表示无回显示符,也可以表示常规字符
\n 回车换行 (本义是光标往下一行)
\t 横向跳到下一制表位
\v 竖向跳格
\b 退格
\r 回车(本义是光标重新回到本行开头)
\f 走纸换行
\\ 反斜杠符 \
\‘ 单引号符
\a 鸣铃
\ddd 一至三位八进制数代表的字符
\xhh 一至两位十六进制数所代表的字符
转移符的使用:当反斜杠 (\) 作为转移符使用时必须出现在单引号或者双引号之间
案例:
1 #include
2
3 int main()
4 {
5 char enter = ‘\n‘;
6
7 char* p = "\141\t\x62";
8
9 printf("%s", p);
10 printf("%c", enter);
11
12 return 0;
13 }
小结:
C语言的反斜杠同时具有接续符和转移符的作用
作为接续符使用的时候可直接出现在程序中
作为转移符使用的时需出现在单引号或者双引号之间
本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标编程语言C/C+频道!
您输入的评论内容中包含违禁敏感词
我知道了
请输入正确的手机号码
请输入正确的验证码
您今天的短信下发次数太多了,明天再试试吧!
我们会在第一时间安排职业规划师联系您!
您也可以联系我们的职业规划师咨询:
版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
沪公网安备 31011502005948号