文章目录提示:注意转义字符仍将其算作一个字符。
- 一,常见的转义字符
- 二,转义字符的使用
- (1)学习了解
- (2)面试题1
- (2)面试题2
- (3)面试题3
一,常见的转义字符
二,转义字符的使用 (1)学习了解? 在书写连续问号时,防止被解析成三字母词( ??) = ] )
’ 用于表示字符常量’
" 用于表示字符常量"
\ 用于表示一个反斜杠
a 警告字符,蜂鸣
b 退格符
f 进纸符
n 换行符
r 回车
t 水平制表符
v 垂直制表符
ddd ddd表示3个八进制数字(0~7)
xdd dd表示2个十六进制数字
#include(2)面试题1#include int main() { printf("%sn","(are you ok??)"); //打印结果are you ok?? //防止被解析成are you ok] printf("%cn", ''');//输出结果:' printf("%cn", '"');//输出结果:” printf("n");//换行符 printf("abcd\0efn");//转义后,可以打印出 ,因为\用于表示一个反斜杠,打印结果:abcd ef printf("an");//运行时电脑会发出声音 printf("abcndtef");//t水平制表符,相当于键盘上的Tab return 0; }
#includeint main() { printf("c:testtest.cn"); printf("%dn", strlen("c:testtest.cn"));//13 printf("c:\test\test.cn"); printf("%dn", strlen("c:\test\test.cn"));//15 return 0; }
(2)面试题21.两个的打印结果是不同的,因为t是转义字符(水平制表符),所以打印1并没有输出t,而输出了水平制表符的效果;打印二是路径的打印,用了这个转义字符,表示一个反斜杠,这样就可以打印出t了。
2.我们用strlen()计算了两种打印的字符串长度,发现也不相同。
打印1:t和n是转义字符,实则算做一个字符,所以是13个字符;
打印2:\t 实则\为转义字符,表示一个反斜杠,算一个字符,n也是一个字符,所以又15个字符
#includeint main() { //ddd表示1-3个八进制数字 printf("%cn", '130'); //xdd表示2个十六进制数字 printf("%cn", "x60"); }
(3)面试题3(1)130是8进制数字,而非一百三十
如何将八进制数字转换成十进制数字?
18^2=64
38^1=24
08^0=0
相加为88,88对应ASCII码表中大写X
(2)x60是十六进制数字
如何将十六进数字制转换成十进制数字?
616^1=96
0*16^0=0
相加为96,96对应ASCII码表中小写
a-97 A-65
#includeint main() { printf("%dn", strlen("qwer t"));//6,空格也是字符 printf("%dn", strlen("c:test628test.c")); //t 62算一个字符,注意不是628,因为8不属于八进制数字 }



