转义字符的输出

转义字符的输出

转义字符在输出时前面要加上“\”,如:

printf("\\t"); 输出制表符“\t”

printf("\\n"); 输出换行符"\n"

printf("\\"); 输出斜杠“\”

可以这样来理解,输出时,当遇到"\"时,表示转义,"\\"表示的是一个斜杠"\",这样后面跟的字母是什么就打印什么,不管后面跟的是什么字符。

有一个问题,就是回退符从键盘输入不了,在C语言经典教材《C程序设计语言》的1-10题中,要求输入回退符打印出"\b",参考答案程序如下:

#include

int main()

{

int c;

while((c=getchar()) != EOF)

{

if(c == '\t')

printf("\\t");

else if(c == '\b')

printf("\\b");

else if(c == '\\')

printf("\\\\");

else

putchar(c);

}

return 0;

}

然而从键盘上输入回退键,只是将之前的输入删除,并不能打印出回退键。查看了一些人的解释,我对此的理解是,getchar()函数接受字符的触发点是按回车键,当输入一串字符时,只有按了回车键getchar()才从输入流中按一定算法提取一个字符,直到提取完输入流中的字符再等待输入。而删除字符时,输入的字符还没有进入到输入流中,所以按回车键触发getchar()时,是提取不了的。

另外,还有一些输出规则:

printf("%%"); 输出一个%

printf("%d"); 输出有符号十进制整数

printf("%o"); 输出无符号八进制整数

printf("%c"); 输出单个字符

printf("%s"); 输出一串字符

printf("%x"); 输出无符号十六进制整数

相关文章