文档详情

字串格式化命令Sprintf详细介绍.doc

发布:2017-02-14约6.06万字共12页下载文档
文本预览下载声明
字串格式化命令Sprintf详细介绍 字串格式化命令。sprintf 是个变参函数,使用时经常出问题,而且只要出问题通常就是能导致程序崩溃的内存访 问错误,但好在由sprintf 误用导致的问题虽然严重,却很容易找出,无非就是那么几种情况,通 常用眼睛再把出错的代码多看几眼就看出来了。 目录 HYPERLINK /view/1295144.htm \l 1#1 函数简介 HYPERLINK /view/1295144.htm \l 2#2 参数说明及应用举例 HYPERLINK /view/1295144.htm \l 3#3 使用sprintf 的常见问题 HYPERLINK /view/1295144.htm \l 1 函数简介 HYPERLINK /view/1295144.htm \l 2 参数说明及应用举例 HYPERLINK /view/1295144.htm \l 3 使用sprintf 的常见问题 函数简介   函数功能:把格式化的数据写入某个字符串   头文件: HYPERLINK /view/538727.htm \t _blank stdio.h   函数原型:int sprintf( char *buffer, const char *format [, argument] … );   返回值:字符串长度(strlen)   相关函数:[1]   int HYPERLINK /view/2666640.htm \t _blank sprintf_s(char *buffer, HYPERLINK /view/3236587.htm \t _blank size_t sizeOfBuffer,const char *format [,argument] ... );   int _sprintf_s_l(char *buffer,size_t sizeOfBuffer,const char *format,locale_t locale [,argument] ... );   int swprintf_s( HYPERLINK /view/2063825.htm \t _blank wchar_t *buffer,size_t sizeOfBuffer,const wchar_t *format [,argument]...);   int _swprintf_s_l(wchar_t *buffer,size_t sizeOfBuffer,const wchar_t *format,locale_t locale [,argument]…);   template size_t size   int sprintf_s(char (buffer)[size],const char *format [,argument] ... ); // C++ only   template size_t size   int swprintf_s(wchar_t (buffer)[size],const wchar_t *format [,argument]...); // C++ only 参数说明及应用举例   sprintf格式的规格如下所示。[]中的部分是可选的。   %[指定参数][标识符][宽度][.精度]指示符   若想输出`%本身时, 请这样`%%处理。   1. 处理字符方向。负号时表示从后向前处理。   2. 填空字元。 0 的话表示空格填 0;空格是内定值,表示空格就放着。   3. 字符总宽度。为最小宽度。   4. 精确度。指在小数点后的浮点数位数。   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=- 转换字符   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-   %% 印出百分比符号,不转换。   %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 (%-
显示全部
相似文档