
printf函数解析
发布日期:2021-05-14 09:01:52
浏览次数:20
分类:精选文章
本文共 3791 字,大约阅读时间需要 12 分钟。
函数参考
<stdio.h>
int printf ( const char * format, ... );功能概述
将格式化字符串中的指定占位符用相应的数据替换到标准输出流中。占位符按照顺序依次替换,因此所需的额外参数必须与占位符数量相匹配。
format- 要写入标准输出的内容。可以包含嵌入的格式占位符,可被后续参数替换。 占位符格式为: %[flags][width][.precision][length]specifier 具体Ocean-specifier定义了输出的类型和值的解释规则。
额外参数- 依据 format字符串中占位符的数量提供相应的参数。每个参数对应一个占位符。
成功时返回写入输出的总字符数,失败返回负值。占位符规范
占位符 | 输出类型 | 示例 |
---|---|---|
c | 字符 | a |
d or i | 有符号整数 | 392 |
e | 科学计数法( mantissa/exponent) | 3.9265e+2 |
E | 科学计数法( mantissa/exponent)(大写E) | 3.9265E+2 |
f | 浮点数 | 392.65 |
g | 较短的%e或%f格式 | 392.65 |
G | 较短的%E或%f格式 | 392.65 |
o | 无符号八进制 | 610 |
s | 字符串 | sample |
u | 无符号整数 | 7235 |
x | 无符号十六进制整数 | 7fa |
X | 无符号十六进制整数(大写) | 7FA |
p | 指针地址 | B800:0000 |
n | 无输出计数 | |
% | 单个%字符 | % |
占位符标志
标志 | 说明 |
---|---|
- | 左对齐(默认右对齐) |
+ | 强制在正数前添加+号 |
(space) | 如果没有符号,添加空格。 |
# | 与o、x、X表示:非零时添加前缀(0、0x、0X); uels:对于e、E和f,强制写出小数点,即使没有小数位;对于g或G,始终保留小数点,不去除尾随零。 |
0 | 用0填充宽度(如width指定的宽度)。 |
宽度规范
宽度 | 说明 |
---|---|
(number) | 输出的字符数下限。如果输出内容短于这个数值,将用空格填充。内容不会被截断。 |
* | 宽度由前的一个额外参数指定,不在format字符串中。 |
精度规范
精度 | 说明 |
---|---|
.number | 对于整数类型:指定必须输出的最小数字个数。如果内容短于这个数值,则用0填充。 |
对于浮点数或其他类型,精度可能有不同的含义: .* 精度由前一个额外参数指定,不在format字符串中。
长度规范
长度 | 说明 | |
---|---|---|
h | 视为短整数或长整数(仅对整数类型有效)。 | |
l | 视为长整数或长字符(长整数对c和s有效)。 | |
L | 视为长双(仅适用于浮点类型)。 |
示例代码
#include int main() { printf("字符:%c %c\n", 'a', 65); printf("十进制:%d %ld\n", 1977, 650000L); printf("左对齐:%10d\n", 1977); printf("左边补零:%010d\n", 1977); printf("不同基数:%d %x %o %#x %#o\n", 100, 100, 100, 100, 100); printf("浮点数:%4.2f %+.0e %E\n", 3.1416, 3.1416, 3.1416); printf("宽度控制:%*d\n", 5, 10); printf("字符串:%s\n", "A string"); return 0; }
由于 printf函数的行为可能因平台而异,请确保使用符合实际的编译环境配置。
发表评论
最新留言
网站不错 人气很旺了 加油
[***.192.178.218]2025年04月27日 03时11分12秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Mac 在命令行快速切换目录 mark
2025-04-11
mac 安装PIL
2025-04-11
Mac 开发PhoneGap 应用,怎样加入插件 barcodescaner
2025-04-11
mac 搭建APK反编译环境[转]
2025-04-11
MAC 显示隐藏文件
2025-04-11
Mac 电脑更新 vscode的时候报错 遇到“只读卷”问题解决方案
2025-04-11
Mac 的“任务管理器” —— 活动监视器
2025-04-11
mac 配置环境变量,讲的太仔细了,非常棒
2025-04-11
mac-gradle的安装和配置
2025-04-11
mac/ip/TCP/udp报文格式与理论大小
2025-04-11
Mac:Permission denied XXX
2025-04-11
macaca 测试web(2)
2025-04-11
Macbook / pro卡顿怎么处理?这些方法让它满血复活!
2025-04-11
MacBook Air怎么重新输入wifi密码
2025-04-11
MacBook Pro 休眠后五国,自动重启报错
2025-04-11
Macbook Pro下Bootcamp上win7截图方法
2025-04-11
macbook 外接显示器黑屏,不显示
2025-04-11
macbook466加了两条1333金士顿正常
2025-04-11