Summary
1)编译器会将反斜杠'\'剔除
,跟在反斜杠前面的字符主动接续到前一行
2)在接续单词时,反斜杠'\'之后不能有空格
,反斜杠'\'的下一行之前也不能有空格
3)接续符'\'
适宜用于定义宏代码块
,进步可读性
4)C语言中的本义符'\'
次要用于示意无回显字符
(不会在屏幕上显示的),也能够用于示意惯例字符
。
5)当反斜杠'\'作为本义符应用时,必须呈现在单引号或者双引号之间
\n | 回车换行 |
\t | 横向跳到下一制表地位 |
\ | 反斜杠符'\' |
\' | 单引号符 |
\ddd | 1~3位八进制数所代表的字符 |
\xdd | 1~2位十六进制数所代表的字符 |
\a | 响铃 |
\v | 竖向跳格 |
\b | 退格 |
\r | 回车 |
\f | 走纸换页 |
接续符和本义符
1、接续符'\'
上面代码正确么?
#incl\ud\e <s\tdio\.h>in\t main(\){ printf(\ "Hello World.\n" )\ ; ret\urn 0;}
编译器会将反斜杠'\'剔除,跟在反斜杠前面的字符主动接续到前一行
// 将反斜杠'\'剔除,前面的字符主动接续到前一行的代码如下#include <stdio.h>int main(){ printf( "Hello World.\n" ) ; return 0;}
在接续单词时,反斜杠'\'之后不能有空格,反斜杠的下一行之前也不能有空格
// 如果格局像上面这样,urn后面有4个空格,这时候编译就不过了,因为失去的语句是// ret urn 0; ret\ urn 0;
接续符'\n'适宜在定义宏代码块时应用
// 用宏代码块实现的替换变量语句#define SWAP(a, b) \{ \ int temp = a; \ a = b; \ b = temp; \}
2、本义符'\'
- C语言中的
本义符'\'
次要用于示意无回显字符
(不会在屏幕上显示的),也能够用于示意惯例字符
。 \n 回车换行 \t 横向跳到下一制表地位 \ 反斜杠符'\' \' 单引号符 \ddd 1~3位八进制数所代表的字符 \xdd 1~2位十六进制数所代表的字符 \a 响铃 \v 竖向跳格 \b 退格 \r 回车 f 走纸换页 当反斜杠
'\'作为本义符应用时,必须呈现在单引号或者双引号之间
char* p = "\141 \t \'\a \x62 "; // \141: 八进制141对应十进制97,Ascii中示意字符a // \t: 制表符 // \': 单引号' // \a: 响铃一次 // \x62: 十六进制62对应于十进制98,Ascii中示意字符bprintf("%s\n", p);
本文总结自“狄泰软件学院”唐佐林老师《C语言进阶课程》。
如有错漏之处,恳请斧正。