1、转义字符
除了普通的字符常量外,C语言还允许用一种特殊的形式的字符常量,就是以字符“\”开头的字符序列。转义字符顾名思义就是转变意思。
例如,要在控制台打印一个目录:c:\code\test.c,我们该如何写代码?
#include <stdio.h>
int main()
{
printf("c:\code\test.c\n");
//实际上程序运行的结果是这样的:c:code est.c
printf("c:\\code\\test.c\n");
//实际上程序运行的结果是这样的:c:\code\test.c
return 0;
}
这是为什么呢?请看转义字符具体含义。
2、转义字符具体含义
转义字符 |
释义 |
\? |
在书写连续多个问号时使用,防止他们被解析成三字母词 |
\' |
用于表示字符常量' |
\" |
用于表示一个字符串内部的双引号 |
\\ |
用于表示一个反斜杠,防止它被解释为一个转义序列符。 |
\a |
警告字符,蜂鸣 |
\b |
退格符 |
\f |
进纸符 |
\n |
换行 |
\r |
回车 |
\t |
水平制表符,表示一个tab键的距离 |
\v |
垂直制表符 |
\ddd |
ddd表示1~3个八进制的数字。 如: \130 X |
\xdd |
dd表示2个十六进制数字。 如: \x30 0 |
3、格式化输出
格式化输出语句,也可以说是占位输出,是将各种类型的数据按照格式化后的类型及指定的位置从计算机上显示。
其格式为:printf("输出格式符",输出项);
格式符 |
说明 |
%d |
有符号的十进制整数 |
%u |
无符号10进制整数 |
%c |
单个字符 |
%s |
字符串 |
%f(lf) |
单精度浮点数和双精度浮点数用f,打印6位小数(lf在C99开始加入标准,意思和f相同) |
%.2f |
打印小数点后两位 |
%p |
指针的值,以地址的形式打印 |
%o |
无符号8进制整数(不输出前缀0) |
%x |
无符号16进制整数,x对应的是abcdef(不输出前缀0x) |
%X |
无符号16进制整数,X对应的是ABCDEF(不输出前缀0x) |
%#x |
无符号16进制整数,x对应的是abcdef(输出前缀0x) |
%#X |
无符号16进制整数,X对应的是ABCDEF(输出前缀0X) |
%0.8d |
以8位(字节)的方式输出 |
注意:
%2d,表示打印该数字的时候打印两位,不够两位用空格补上,右对齐
%-2d,表示打印该数字的时候打印两位,不够两位用空格补上,左对齐
格式符的个数要与变量、常量或者表达式的个数一一对应。
举例: