★首先,让我们看一下面的代码运行结果是什么?
#include<stdio.h>
int main()
{
printf(“(Are you ok??)\n”);
return 0;
}
●上边代码我们想要的运行结果是(Are you ok??),但是实际的结果却是(Are
you ok],为什么呢?
三字母词:
三字母词
|
??>
|
??<
|
??)
|
??(
|
表示字符
|
}
|
{
|
]
|
[
|
◆由于三字母词的引入,我们应该怎么输入(Are you ok??)呢?
▲以下是编程中常用转义字符的总结
- \? 在书写连续多个问号时使用,防止被解析成三字母词
- \' 用于表示字符常量 ‘
- \" 用于表示一个字符串内部的双引号
- \\ 用于表示一个反斜杠,防止被解析为一个转义字符
- \a 响鸣符
- \b 退格符
- \f 进纸符
- \n 换行符
- \r 回车
- \t 水平制表符
- \v 垂直制表符
- \ddd ddd表示1~3个八进制的数字(例:\65--A)
- \xddd ddd 表示3个十六进制数字(转换为十进制ASSIC码值对应的字符)
★下面是一道经典的面试题,输出的结果是什么呢?
#include<stdio.h>
int main()
{
printf("%d\n",strlen("abcd"));
printf("%d\n",strlen(c:\test\31\net));
return 0;
}
OUT:strlen 函数是返回字符串的长度,所以程序的输出应该是 4 和10.
注意:c:\test\31\net中\t、\n分别为一个转义字符,\31为\ddd形式为一个转义字符。