描述
C 库函数 int printf(const char *format, ...) 发送格式化输出到标准输出 stdout
printf() 函数的调用格式为 :
printf("<格式化字符串>", <参量表>);
声明
下面是 printf() 函数的声明
int printf(const char *format, ...)
样例
#include <stdio.h>
#include <stdbool.h>
int main() {
// 字符
char ch = 'C';
char str[] = "Hello World!";
printf("字符 : %c\n", ch);
printf("ASCII码 : %x\n", ch);
printf("字符串 : %s\n", str);
printf("前3个字符 : %.3s\n", str);
printf("字符%% : %%\n");
// 字符带场宽
printf("左对齐场宽13位 : %-13s\n", str);
printf("右对齐场宽13位 : %13s\n", str);
printf("超过场宽按原样输出 : %6s\n\n", str);
// 数字
int num = 10;
int nNum = -6;
float flt = 3.1415926;
double dbl = 0.000009;
printf("无符号8进制 : %o\n", num);
printf("无符号10进制 : %u\n", num);
printf("有符号10进制 : %d 或 %i\n", num, nNum);
printf("无符号16进制 : %x 或 %X\n", num, num);
printf("浮点数 : %f\n", flt);
printf("双精度 : %lf\n", dbl);
printf("小数点后3位 : %.3f\n", flt);
printf("科学计数 : %e 或 %E\n", flt, flt);
printf("浮点数 %f 和科学计数 %.e 二者取短 : %g\n", dbl, dbl, dbl);
// 数字带场宽
printf("左对齐场宽3位 : %-3d\n", num);
printf("右对齐场宽3位 : %3d\n", num);
printf("右对齐补零场宽3位 : %03d\n", num);
printf("超过场宽1位按原样输出 : %1d\n\n", num);
// 布尔
bool flag = false;
printf("布尔 : %u\n\n", flag);
// 指针
int *p; // 定义整型指针变量
p = # // 指针p指向整型变量num
printf("变量num地址 : %p\n", p);
printf("变量num值 : %d\n\n", *p);
return 0;
}
字符 : C
ASCII码 : 43
字符串 : Hello World!
前3个字符 : Hel
字符% : %
左对齐场宽13位 : Hello World!
右对齐场宽13位 : Hello World!
超过场宽按原样输出 : Hello World!
无符号8进制 : 12
无符号10进制 : 10
有符号10进制 : 10 或 -6
无符号16进制 : a 或 A
浮点数 : 3.141593
双精度 : 0.000009
小数点后3位 : 3.142
科学计数 : 3.141593e+000 或 3.141593E+000
浮点数 0.000009 和科学计数 9e-006 二者取短 : 9e-006
左对齐场宽3位 : 10
右对齐场宽3位 : 10
右对齐补零场宽3位 : 010
超过场宽1位按原样输出 : 10
布尔 : 0
变量num地址 : 000000000065FDE4
变量num值 : 10