
extern int printf(const char *format,...);
功能用法
format
Format 参数是包含三种对象类型的一个字符串:
* 无格式字符复制到输出流;
* 转换规范,每个规范导致在值参数列表中检索 1 个或更多个项;
* 转义序列。
通常意义上format的格式如下:
%[flags][width][.prec][F|N|h|l]type
规定输出数据的格式,具体如下:
type
type的字符用于规定输出数据的类型,含义如下:
注:%g、%G在小数点位数四位或指数大于等于精度时用%e、%E,否则用%f。
flags
flags 规定输出样式,取值和含义如下:

width
用于控制显示数值的宽度,取值和含义如下:
n(n=1,2,3,4,5,6...): 宽度至少为n位,不够以空格填充。
* 格式列表中,下一个参数还是width
width是一个可选的指定最小值字段宽度的十进制数字字符串。如果转换值字符少于字段宽度,该字段将从左到右按指定的字段宽度填充。如果指定了左边调整选项,字段将在右边填充。如果转换结果宽于字段宽度,将扩展该字段以包含转换后的结果。不会发生截断。然而,小的精度可能导致在右边发生截断。
prec
用于控制小数点后面的位数,取值和含义如下:
无按缺省精度显示0
当type=d,i,o,u,x时,没有影响;
type=e,E,f时,不显示小数点
n(n=1,2,3...)
当type=e,E,f时表示的最大小数位数;
type=其他,表示显示的最大宽度
prec是指可选的精度。printf的格式精度是一个 .(点)后跟十进制数字字符串。如果没有给出精度,按 0(零)对待。精度指定:
* d、o、i、 u、x 或 X 转换的最少数字显示位数。printf的格式

* e 和 f 转换的基数字符后的最少数字显示位数。
* g 转换的最大有效数字位数。
* s 转换中字符串的最大打印字节数目。
F|N|h|l
表示指针是否是远指针或整数是否是长整数
F 远指针
N 近指针
h 短整数(short int)
l 长整数(long int) (此处如果与d搭配为%lld则为long long int(C99),与f搭配为%llf则为long double(C99))
[Argument]
包含需要输出的数据,可以是常量(字符常量、数字常量、字符串常量),变量,以及运算式。此处的数据应当与前面的format中的格式控制符一一对应(如果不对应会产生错误)。
例如:
转义序列
这些转义序列在字符串中会被自动转换为相应操作命令
表示

例如,WCHAR f = L'\x4e00' 或 WCHAR b[] = L"The Chinese character for one is \x4e00"。
函数返回值
printf 函数的一般形式为:
以上形式,我们在Visual C++里输入“printf”(将会看到)。
说明printf函数类型为整型,其返回值是整型值。
其值为printf实际控制输出的 字符 数。
printf函数实际上是将所有参数按字符输出,根据该函数的参数1(const char *format),我们不难理解。
例如:
以上程序将会输出:
程序举例例一:
例二
printf 也可以这样用(具体请参照 C 语法,字符串相关内容。这不是 printf 特有功能):
输出:
123
注意:

的输出结果与
是相同的。
因此输出多行时,也并不需要每行调用一次printf。
例三
妙用printf判断闰年程序
本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/ruanjian/article-94709-1.html
用十艘022导弹飞艇绕着美舰走
很让中国丢脸