sprintf 将字串格式化。
在头文件
#include< stdio.h >中
语法: int sprintf(string format, mixed [args]…);
返回值:字符串长度(strlen)
1. 处理字符方向。-负号时表时从后向前处理。
2. 填空字元。 0 的话表示空格填 0;空格是内定值,表示空格就放着。
3. 字符总宽度。为最小宽度。
4. 精确度。指在小数点后的浮点数位数。
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
转换字符
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
% 印出百分比符号,不转换。
b 整数转成二进位。
c 整数转成对应的 ASCII 字元。
d 整数转成十进位。
f 倍精确度数字转成浮点数。
o 整数转成八进位。
s 整数转成字串。
x 整数转成小写十六进位。
X 整数转成大写十六进位。
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
<?
$money = 123.1
$formatted = sprintf ("%06.2f", $money); // 此时变数 $ formatted 值为 "123.10"
$formatted = sprintf ("%08.2f", $money); // 此时变数 $ formatted 值为 "00123.10"
$formatted = sprintf ("%-08.2f", $money); // 此时变数 $ formatted 值为 "123.1000"
$formatted = sprintf ("%.2f%%", 0.95 * 100); // 格式化为百分比
?>
¢%08.2f 解释:
%开始符
0是 “填空字元” 表示,如果长度不足时就用0来填满。
6格式化后总长度
2f小数位长度,即2位
¢第4行值为”00123.10″ 解释:
因为2f是(2位)+小数点符号(1)+前面123(3位)=6位,总长度为8位,故前面用[填空字元]0表示,即00123.10
¢第4行值为”-123.1000″ 解释:
-号为反向操作,然后填空字元0添加在最后面了
在将各种类型的数据构造成字符串时,sprintf 的强大功能很少会让你失望。由于sprintf 跟printf 在用法上几乎一样,只是打印的目的地不同而已,前者打印到字符串中,后者则直接在命令行上输出。这也导致sprintf 比printf 有用得多。
sprintf 是个变参函数,定义如下:
int sprintf( char *buffer, const char *format [, argument] … );
除了前两个参数类型固定外,后面可以接任意多个参数。而它的精华,显然就在第二个参数:
格式化字符串上。
printf 和sprintf 都使用格式化字符串来指定串的格式,在格式串内部使用一些以“%”开头的格式说明符(format specifications)来占据一个位置,在后边的变参列表中提供相应的变量,最终函数就会用相应位置的变量来替代那个说明符,产生一个调用者想要的字符串。
相关视频
相关阅读 DEDE的SQL语句以及自定义PHP语法代码谈谈PHP语法5谈谈PHP语法4谈谈PHP语法3谈谈PHP语法2浅谈PHP语法1PHP开发者必知的十大高效技巧PHP入门教程书籍介绍
热门文章 没有查询到任何记录。
最新文章
缺少 mcrypt 扩展。请
php sprintf用法详解MySQL-Front连接管理MySQL图解教程PHPMyAdmin导入SQL文件教程在windows iis5下安装php4.0+mysql之我见
人气排行 MySQL-Front连接管理MySQL图解教程PHPMyAdmin导入SQL文件教程php sprintf用法详解缺少 mcrypt 扩展。请检查 PHP 配置。phpmyPHP5.0正式发布 不完全兼容PHP4 新增多项功使用网络地址转换实现多服务器负载均衡用PHP连mysql和oracle数据库性能比较真正面向对象编程:PHP5.01发布
支持( 0 ) 盖楼(回复)
查看所有0条评论>>