int printf ( const char * format, ... );
说明符 | 输出 | 示例 |
---|---|---|
d 或 i | 有符号十进制整数 | 392 |
u | 无符号十进制整数 | 7235 |
o | 无符号八进制 | 610 |
x | 无符号十六进制整数 | 7fa |
X | 无符号十六进制整数(大写) | 7FA |
f | 十进制浮点数,小写 | 392.65 |
F | 十进制浮点数,大写 | 392.65 |
e | 科学记数法(尾数/指数),小写 | 3.9265e+2 |
E | 科学记数法(尾数/指数),大写 | 3.9265E+2 |
g | 使用最短的表示法%e或%f | 392.65 |
G | 使用最短的表示法%E或%F | 392.65 |
a | 十六进制浮点数,小写 | -0xc.90fep-2 |
A | 十六进制浮点数,大写 | -0XC.90FEP-2 |
c | 字符 | a |
s | 字符串 | sample |
p | 指针地址 | b8000000 |
n | 不打印任何内容。 相应的参数必须是指向signed int. 的指针。到目前为止写入的字符数将存储在所指向的位置。 | |
% | A%后跟另一个%字符将向流中写入一个%。 | % |
标志 | 描述 |
---|---|
- | 在给定的字段宽度内左对齐;右对齐是默认设置(参见宽度子说明符)。 |
+ | 强制在结果前加上正号或负号(+或-),即使是正数。默认情况下,只有负数前会加上-号。 |
(空格) | 如果值前面不写入任何符号,则会在值前插入一个空格。 |
# | 与o, x或X说明符一起使用时,对于非零值,值会分别以0, 0x或或 0X为前缀。 与a, A, e, E, f, F, g或G它强制输出结果包含一个小数点,即使后面没有更多数字。默认情况下,如果后面没有数字,则不写入小数点。 |
0 | 当指定填充时,用零(0)而不是空格来左填充数字(参见宽度子说明符)。 |
宽度 | 描述 |
---|---|
(数字) | 要打印的最小字符数。如果待打印的值比这个数字短,则结果将用空格填充。即使结果更长,值也不会被截断。 |
* | 宽度不是在格式字符串中指定的,而是作为一个额外的整数值参数,位于需要格式化的参数之前。 |
.精度 | 描述 |
---|---|
.数字 | 对于整数说明符(d, i, o, u, x, X):精度指定要写入的最小位数。如果待写入的值比这个数字短,则结果将用前导零填充。即使结果更长,值也不会被截断。精度为0意味着对于值0. 不写入任何字符。对于a, A, e, E, f和F说明符:这是要在小数点后打印的位数(默认为 6)。 不写入任何字符。对于g和G说明符:这是要打印的最大有效数字位数。 不写入任何字符。对于s:这是要打印的最大字符数。默认情况下,所有字符都会被打印,直到遇到结尾的空字符。 如果指定了句点但没有明确的精度值,则假定精度为0。 |
.* | 精度不是在格式字符串中指定的,而是作为一个额外的整数值参数,位于需要格式化的参数之前。 |
说明符 | |||||||
---|---|---|---|---|---|---|---|
长度 | d i | u o x X | f F e E g G a A | c | s | p | n |
(无) | int | unsigned int | double | int | char* | void* | int* |
hh | signed char | unsigned char | signed char* | ||||
h | short int | unsigned short int | short int* | ||||
l | long int | unsigned long int | wint_t | wchar_t* | long int* | ||
ll | long long int | unsigned long long int | long long int* | ||||
j | intmax_t | uintmax_t | intmax_t* | ||||
z | size_t | size_t | size_t* | ||||
t | ptrdiff_t | ptrdiff_t | ptrdiff_t* | ||||
L | long double |
c
说明符的说明:它接受一个int(或 wint_t)作为参数,但在格式化输出之前会将其正确转换为一个char值(或一个wchar_t)。
|
|
Characters: a A Decimals: 1977 650000 Preceding with blanks: 1977 Preceding with zeros: 0000001977 Some different radices: 100 64 144 0x64 0144 floats: 3.14 +3e+000 3.141600E+000 Width trick: 10 A string |