当前位置: 首页 > 文档资料 > C 标准库 中文版 >

int printf(const char *format, ...)

优质
小牛编辑
127浏览
2023-12-01

描述 (Description)

C库函数int printf(const char *format, ...)将格式化输出发送到stdout。

声明 (Declaration)

以下是printf()函数的声明。

int printf(const char *format, ...)

参数 (Parameters)

  • format - 这是包含要写入stdout的文本的字符串。 它可以选择包含嵌入的格式标记,这些标记由后续附加参数中指定的值替换,并按请求格式化。 格式标签原型是%[flags][width][.precision][length]specifier ,如下所述 -

Sr.No.说明和输出
1

c

字符

2

d or i

有符号十进制整数

3

e

使用e字符的科学记数法(尾数/指数)

4

E

使用E字符的科学记数法(尾数/指数)

5

f

十进制浮点

6

g

使用较短的%e或%f

7

G

使用较短的%E或%f

8

o

签名八进制

9

s

字符串

10

u

无符号十进制整数

11

x

无符号十六进制整数

12

X

无符号十六进制整数(大写字母)

13

p

指针地址

14

n

什么都没打印

15

%

字符

Sr.No.标志和描述
1

-

在给定的字段宽度内左对齐; 右对齐是默认值(请参阅宽度子说明符)。

2

+

强制在结果前面加上加号或减号(+或 - ),即使是正数。 默认情况下,只有负数前面带有-ve符号。

3

(space)

如果不写入任何符号,则在值之前插入空格。

4

#

与o,x或X说明符一起使用时,对于不同于零的值,该值前面分别为0,0x或0X。 与e,E和f一起使用时,即使没有数字,也会强制写入的输出包含小数点。 默认情况下,如果没有数字,则不写入小数点。 与g或G一起使用时,结果与e或E相同,但不删除尾随零。

5

0

使用零(0)而不是空格填充数字,其中指定了填充(请参阅width子说明符)。

Sr.No.宽度和描述
1

(number)

要打印的最小字符数。 如果要打印的值小于此数字,则结果将填充空格。 即使结果较大,也不会截断该值。

2

*

宽度未在格式字符串中指定,而是作为必须格式化的参数之前的附加整数值参数。

Sr.No..precision&Description
1

.number

对于整数说明符(d,i,o,u,x,X) - precision指定要写入的最小位数。 如果要写入的值小于此数字,则结果将使用前导零填充。 即使结果较长,也不会截断该值。 精度为0表示没有为值0写入字符。对于e,E和f说明符 - 这是小数点后要打印的位数。 对于g和G说明符 - 这是要打印的最大有效位数。 对于s - 这是要打印的最大字符数。 默认情况下,将打印所有字符,直到遇到结束的空字符。 对于c型 - 它没有效果。 如果未指定精度,则默认值为1.如果指定的句点没有显式的精度值,则假定为0。

2

.*

精度未在格式字符串中指定,而是作为必须格式化的参数之前的附加整数值参数。

Sr.No.长度和描述
1

h

该参数被解释为short int或unsigned short int(仅适用于整数说明符:i,d,o,u,x和X)。

2

l

对于整数说明符(i,d,o,u,x和X),该参数被解释为long int或unsigned long int,对于说明符c和s,该参数被解释为宽字符或宽字符串。

3

L

该参数被解释为long double(仅适用于浮点说明符:e,E,f,g和G)。

  • additional arguments - 根据格式字符串,该函数可能需要一系列附加参数,每个参数包含一个要插入的值,而不是format参数中指定的每个%-tag(如果有)。 这些参数的数量应与期望值的%-tags数相同。

返回值 (Return Value)

如果成功,则返回写入的字符总数。 失败时,返回负数。

例子 (Example)

以下示例显示了printf()函数的用法。

#include <stdio.h>
int main () {
   int ch;
   for( ch = 75 ; ch <= 100; ch++ ) {
      printf("ASCII value = %d, Character = %c\n", ch , ch );
   }
   return(0);
}

让我们编译并运行上述程序以产生以下结果 -

ASCII value = 75, Character = K
ASCII value = 76, Character = L
ASCII value = 77, Character = M
ASCII value = 78, Character = N
ASCII value = 79, Character = O
ASCII value = 80, Character = P
ASCII value = 81, Character = Q
ASCII value = 82, Character = R
ASCII value = 83, Character = S
ASCII value = 84, Character = T
ASCII value = 85, Character = U
ASCII value = 86, Character = V
ASCII value = 87, Character = W
ASCII value = 88, Character = X
ASCII value = 89, Character = Y
ASCII value = 90, Character = Z
ASCII value = 91, Character = [
ASCII value = 92, Character = \
ASCII value = 93, Character = ]
ASCII value = 94, Character = ^
ASCII value = 95, Character = _
ASCII value = 96, Character = `
ASCII value = 97, Character = a
ASCII value = 98, Character = b
ASCII value = 99, Character = c
ASCII value = 100, Character = d