博客园  :: 首页  :: 新随笔  :: 订阅 订阅  :: 管理

数据输出格式化样式

Posted on 2012-04-23 13:55  扬名  阅读(1616)  评论(0编辑  收藏  举报

数据输出格式化规定符:
%d 格式化为十进制有符号整数输出到缓冲区
%u 格式化为十进制无符号整数输出到缓冲区
%f 格式化为浮点数输出到缓冲区
%s 格式化为字符串输出到缓冲区
%c 格式化为单个字符输出到缓冲区
%e 格式化为指数形式的浮点数输出到缓冲区
%x 格式化为无符号以十六进制表示的整数(a-f小写输出)输出到缓冲区
%X 格式化为无符号以十六进制表示的整数(a-f大写输出)输出到缓冲区
%0 格式化为无符号以八进制表示的整数输出到缓冲区
%g 格式化为自动选择合适的表示法输出到缓冲区
%02x 格式化为无符号以十六进制表示的整数(a-f小写输出)输出到缓冲区,不足两位补足两位

说明:
1.可以在"%"和字母之间插进数字表示最大场宽。
例如:%3d 表示输出3位整型数,不够3位右对齐。%9.2f 表示输出场宽为9的浮点数,其中小数位为2,整数位为6,小数点占一位,不够9位右对齐。%8s 表示输出8个字符的字符串,不够8个字符右对齐。如果字符串的长度、或整型数位数超过说明的场宽,将按其实际长度输出。但对浮点数,若整数部分位数超过了说明的整数位宽度,将按实际整数位输出;若小数部分位数超过了说明的小数位宽度,则按说明的宽度以四舍五入输出。另外,若想在输出值前加一些0,就应在场宽项前加个0。例如: %04d 表示在输出一个小于4位的数值时,将在前面补0使其总宽度为4位。如果用浮点数表示字符或整型量的输出格式,小数点后的数字代表最大宽度,小数点前的数字代表最小宽度。例如: %6.9s 表示显示一个长度不小于6且不大于9的字符串。若大于9,则第9个字符以后的内容将被删除。

2.可以在"%"和字母之间加小写字母l,表示输出的是长型数。例如: %ld 表示输出long整数,%lf 表示输出double浮点数。
3.可以控制输出左对齐或右对齐,即在"%"和字母之间加入一个"-" 号可说明输出为左对齐,否则为右对齐。例如: %-7d 表示输出7位整数左对齐。%-10s 表示输出10个字符左对齐。

 

详见:http://www.cplusplus.com/reference/clibrary/cstdio/printf/