`printf` 是 C 语言中用于格式化输出的函数。它根据指定的格式字符串和一系列参数,将数据输出到标准输出设备(通常是屏幕)。`printf` 函数的原型如下:
```c
int printf(const char *format, ...);
```
格式化字符串
格式化字符串由普通字符和格式控制符组成。普通字符会按原样输出,而格式控制符以 `%` 开头,后跟一个或多个规定字符,用于确定输出内容的格式。例如:
`%d`:输出带符号整数
`%f`:输出浮点数
`%s`:输出字符串
`%c`:输出单个字符
`%p`:输出指针
`%u`:输出无符号整数
`%x`:输出无符号十六进制整数(小写字母)
`%X`:输出无符号十六进制整数(大写字母)
参数列表
参数列表与格式化字符串中的格式控制符一一对应。参数可以是整数、浮点数、字符串、指针等。例如:
```c
printf("Hello %s, you are %d years old
", "Bob", age);
```
示例
```c
include
int main() {
int i = 10;
float f = 96.3f;
printf("student number=%3d score=%5.2f
", i, f);
return 0;
}
```
输出:
```
student number= 10 score=96.25
```
在这个示例中,`%3d` 表示输出宽度为 3 的十进制整数,`%5.2f` 表示输出宽度为 5 位数字,其中 2 位是小数的浮点数。
注意事项
1. 格式化字符串中的格式控制符和参数列表必须匹配,否则可能导致未定义行为。
2. `printf` 函数返回输出的字符数,如果输出失败则返回负值。
3. 在格式化字符串中,可以使用转义字符 `\n` 表示换行。