一、转义字符
常见的:
转义字符 | 作用 |
---|---|
\n | 换行 |
\b | 退格 |
\t | 水平制表符 |
\r | 回车,光标回退到本行开头的位置 |
\\ | 代表字符:\ |
\’ | 代表字符:’ |
\" | 代表字符:" |
? | 代表一个问好 |
\0 | 空字符 ,标记字符串的结束 |
另外,还有:
- \ddd:ddd 表示跟 1~3 位八进制数
不超过 unsigned char 的最大值,即’\377’
\xhh:hh 表示跟 1~2 位十六进制数
最大值为’\xFF’
注意是小写 x
例子:
使用转义字符’\ddd’、‘\xhh’
源代码:
//转义字符:'\ddd'、'\xhh'
#include <stdio.h>
int main()
{
char ch = 0;
ch = '\101'; //八进制数101,转化为十进制数为65
printf(" %d\n", ch);
printf(" %c\n\n", ch);
ch = '\x41'; //十六进制数41,转化为十进制数为65
printf(" %d\n", ch);
printf(" %c\n\n", ch);
return 0;
}
运行结果:
例子:
转义字符常量只代表一个字符
源代码:
#include <stdio.h>
int main()
{
printf("%d\n", sizeof("Hello world")); //12
printf("%d\n", sizeof("Hello\0world")); //12
printf("%d\n", sizeof("\\\"\377123\378"));
//\377 占据 1 \378 不能算一个,因为越界因此算 2 字节,总共 9 字节
printf("%d\n", sizeof("\0xFF\"")); //6
return 0;
}
运行结果:
转义字符总结
二、printf 刷新输出
最初,printf() 语句把输出发送到一个叫做缓冲区(buffer)的中间存储区域,然后缓冲区中的内容再不断发送到屏幕上
作用:提高 cpu 的处理速度
把缓冲区中的内容发送到屏幕是在缓冲区满、遇到换行字符(\n)或需要输入的时候(从缓冲区把数据发送到屏幕或文件被称为刷新缓冲区)
printf() 函数的返回值是待显示字符的个数