鱼C论坛

 找回密码
 立即注册
查看: 4220|回复: 5

[技术交流] 给大家一个printf 格式速查表

[复制链接]
发表于 2011-6-24 18:43:24 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 excessstone 于 2011-6-26 03:53 编辑

方便大家使用了

原文网址:
http://www.devdaily.com/blog/post/software-dev/cheat-sheet-reference-printf-format-specifier-syntax

附件是我做的简短翻译。

Printf( ) 格式速查
原文网址:
http://www.devdaily.com/blog/post/software-dev/cheat-sheet-reference-printf-format-specifier-syntax
基本语法:
就不系统说了,你懂的。
       printf("我的名字是:%s %s,我今年%d岁。\n","Zhang", "San",1000);
将会打印:
       我的名字是:Zhang San,我今年1000岁。
想要打印的文本放在双引号中。有百分号“%”的地方会被后面的数据替换,详情见正文。多个参数用逗号隔开。反斜线“\”为转义字符,此处“\n” 表示换行。
基本格式字符
  
%c
  
character
字符
  
%d
  
decimal (integer) number (base 10)
整数(10进制)
  
%e
  
exponential floating-point number
浮点数,带10的e次幂
  
%f
  
floating-point number
浮点数
  
%i
  
integer (base 10)
整数(10进制)
  
%o
  
octal number (base 8)
整数(8进制)
  
%s
  
a string of characters
字符串
  
%u
  
unsigned decimal (integer) number
无符号整数
  
%x
  
number in hexadecimal (base 16)
整数(16进制)
  
%%
  
print a percent sign
打印百分号
  
\%
  
print a percent sign
打印百分号
控制整数宽度
"%3d"所有整数都占3个字符位置,空位用空格补齐。如果实际数值超过3位,按实际宽度打印。
  
printf("%3d", 0);
  
0
固定宽度为3
  
printf("%3d", 123456789);
  
123456789
固定宽度小于实际宽度,按实际宽度打印
  
printf("%3d", -10);
  
-10
打印负数
  
printf("%3d", -123456789);
  
-123456789
打印负数
左对齐整数
百分号后面加减号
  
printf("%-3d", 0);
  
0
左对齐
  
printf("%-3d", 123456789);
  
123456789
  
printf("%-3d", -10);
  
-10
  
printf("%-3d", -123456789);
  
-123456789
固定宽度并用0补齐空位
  
printf("%03d", 0);
  
000
  
printf("%03d", 1);
  
001
  
printf("%03d", 123456789);
  
123456789
  
printf("%03d", -10);
  
-10
  
printf("%03d", -123456789);
  
-123456789
组合使用:
正数前面可以打印“+”号
  
  
代码
输出
  
宽度为5
  
printf("'%5d'", 10);
'   10'
  
宽度5,左对齐
  
printf("'%-5d'", 10);
'10   '
  
宽度5,空位补零
  
printf("'%05d'", 10);
'00010'
  
带加号
  
printf("'%+5d'", 10);
'  +10'
  
你猜
  
printf("'%-+5d'", 10);
'+10  '
打印浮点数
Here areseveral examples showing how to print floating-point numbers with printf.
  
  
代码
输出
  
一位小数
  
printf("'%.1f'", 10.3456);
'10.3'
  
两位小数
  
printf("'%.2f'", 10.3456);
'10.35'
  
总宽度8位,2位小数
  
printf("'%8.2f'", 10.3456);
'   10.35'
  
总宽度8位,4位小数
  
printf("'%8.4f'", 10.3456);
' 10.3456'
  
总宽度8位,2位小数,空位补零
  
printf("'%08.2f'",  10.3456);
'00010.35'
  
总宽度8位,2位小数,左对齐
  
printf("'%-8.2f'",  10.3456);
'10.35   '
  
你再猜
  
printf("'%-8.2f'",  101234567.3456);
'101234567.35'
打印字符串
  
  
代码
输出
  
简单打印
  
printf("'%s'",  "Hello");
'Hello'
  
总宽度10位
  
printf("'%10s'",  "Hello");
'     Hello'
  
总宽度10位,左对齐
  
printf("'%-10s'",  "Hello");
'Hello     '
转义字符
  
\n
  
newline, or linefeed
换行
  
\t
  
tab
制表符
  
\\
  
backslash
反斜线本身
举例:
  
  
代码
实际内容
  
制表符
  
printf("Hello\tworld");
Hello world
  
换行
  
printf("Hello\nworld");
Hello
  world
  
windows路径
  
printf("C:\\Windows\\System32\\");
C:\Windows\System32\

Printf.zip

11.83 KB, 下载次数: 34

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2011-6-26 06:13:47 | 显示全部楼层
我把翻译的文本贴出来了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-6-26 14:12:31 | 显示全部楼层
谢谢你,我已经学到这里了,收下了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-6-26 18:42:46 | 显示全部楼层
对新手一个不错的小东东
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-6-27 21:33:09 | 显示全部楼层
顶一下 呵呵 正是需要的  唉 迷茫printf的格式 不过经过看你的问题得到了一定的解决
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2021-5-23 00:53:30 | 显示全部楼层
学习了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-14 15:13

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表