C语言 <stdio.h> printf() 函数
-
描述
C库函数int printf(const char *format, ...) 将格式化的输出发送到stdout。 -
声明
以下是printf()函数的声明。int printf(const char *format, ...)
参数- format -这是包含要写入标准输出(STDOUT)的文本的字符串。它可以选择包含嵌入的格式标签,这些标签由后续附加参数中指定的值替换并按要求设置格式。格式标签原型为%[flags][width][.precision][length]指示符,其说明如下-
- 其他参数 - 根据格式字符串,函数可能需要一系列附加参数,每个参数包含一个要插入的值,而不是格式参数中指定的每个%-tag(如果有)。这些参数的数量应与期望值的%-tag数量相同。
specifier 说明 c 字符 d or i 有符号十进制整数 e 使用e字符的科学计数法(尾数/指数) E 使用E字符的科学计数法(尾数/指数) f 十进制浮点数 g 使用%e或%f中的较短者 G 使用%E或%f中的较短者 o 有符号八进制 s 字串串 u 无符号十进制整数 x 无符号十六进制整数 X 无符号十六进制整数(大写字母) p 指针地址 n 什么都不打印 % 字符 flags 说明 - 在给定的字段宽度内左对齐; 右对齐是默认设置(请参见width子说明符)。 + 强制在结果前加上一个加号或减号(+或-),即使对于正数也是如此。 默认情况下,仅负数前面带有-ve号。 (space)空格 如果未写入任何符号,则在值之前插入空格。 # 与o,x或X说明符一起使用。 对于不等于零的值,该值分别以0、0x或0X开头。 与e,E和f一起使用时,即使后面没有数字,它也会强制写入的输出包含小数点。 默认情况下,如果没有数字跟随,则不写入小数点。 与g或G一起使用时,结果与e或E相同,但不会删除尾随零。 0 用零(0)而不是空格左键填充数字(在其中指定了填充)(请参见宽度子说明符)。 width 说明 (number) 最少要打印的字符数。 如果要打印的值小于此数字,则结果将用空格填充。 即使结果较大,该值也不会被截断。 * 宽度不是在格式字符串中指定的,而是作为必须格式化的参数之前的附加整数值参数。 .precision 说明 .number 对于整数说明符(d,i,o,u,x,X)-precision指定要写入的最小位数。 如果要写入的值短于该数字,则结果将以前导零填充。 即使结果更长,该值也不会被截断。 精度为0表示不为0写入任何字符。对于e,E和f指示符:这是小数点后要打印的位数。 对于g和G指定符:这是要打印的最大有效位数。 对于s:这是要打印的最大字符数。 默认情况下,将打印所有字符,直到遇到结尾的空字符为止。 对于c类型:无效。 如果未指定精度,则默认值为1。如果指定的期间没有明确的精度值,则假定为0。 .* 精度不是在格式字符串中指定的,而是作为必须格式化的参数之前的附加整数值参数指定的。 length 说明 h 该参数被解释为short int或unsigned short int(仅适用于整数说明符:i,d,o,u,x和X)。 l 对于整数说明符(i,d,o,u,x和X),该参数解释为long int或unsigned long int,对于说明符c和s解释为宽字符或宽字符串。 L 该参数被解释为长整数(仅适用于浮点说明符:e,E,f,g和G)。 -
返回值
如果成功,则返回写入的字符总数,否则,返回负数。示例以下示例显示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