免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1011 | 回复: 0
打印 上一主题 下一主题

vsprintf() 函数 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-04-08 20:26 |只看该作者 |倒序浏览

        vsprintf() 函数
        w3pop.com / 2006-10-11
       
       


返回
       
       
       
       
        Definition and Usage
定义和用法
The vsprintf() function writes a formatted string to a variable.
vsprintf()函数的作用是:输出格式化字符串到变量。
Unlike sprintf(), the arguments in vsprintf(), are placed in an
array. The array elements will be inserted at the percent (%) signs in
the main string. This function works "step-by-step". At the first %
sign, the first array element is inserted, at the second % sign, the
second array element is inserted, etc.
与fprintf()函数不同,vsprintf()函数中的自变量是位于数组中的,数组元素的字符串之前都要加上百分号(%)。这个函数是“一步一步
[step-by-step]”按顺序执行。在第一个%后,将插入第一个数组元素;在第二个%后,将插入第二个数组元素,依次类推。
Syntax
语法
   
        
            
            vsprintf(format,argarray)
            
        
   
   
        
            Parameter参数
            Description描述
        
        
            format
            Required. Specifies the string and how to format the variables in it.
            必要参数。指定字符串,以及如何定义其中变量的格式。
            
Possible format values:
            可能值如下:
            
  • %% - Returns a percent sign
                    %% -返回百分号
  • %b - Binary number
                    %b –返回二进制数
  • %c - The character according to the ASCII value
                    %c –返回与ASCII值相对应的字符
  • %d - Signed decimal number
                    %d –带有正负号的十进制数
  • %e - Scientific notation (e.g. 1.2e+2)
                    %e –科学计数符号(如:1.2e+2)
  • %u - Unsigned decimal number
                    %u –不带正负号的十进制数
  • %f - Floating-point number (local settings aware)
                    %f – 浮点数据(本地设置)
  • %F - Floating-point number (not local settings aware)
                    %F –浮点数据(非本地设置)
  • %o - Octal number
                    %o –十进制数
  • %s - String
                    %s –字符串
  • %x - Hexadecimal number (lowercase letters)
                    %x –十六进制数(小写字母)
  • %X - Hexadecimal number (uppercase letters)
                    %X –十六进制数(大写字母)

            
Additional format values. These are placed between the % and the letter (example %.2f):
            其它格式的值。它是位于%和字母之间的(如:%.2f)
            
  • + (Forces both + and - in front of numbers. By default, only negative numbers are marked)
                    +(在数字前加上+和-;默认情况下,只有负数是被标记出来的)
  • '
    (Specifies what to use as padding. Default is space. Must be used
    together with the width specifier. Example: %'x20s (this uses "x" as
    padding)
                    ’(指定使用什么作为补白,默认值是空格。它必须与宽度指定器一起使用。如:%'x20s(使用“x”作为padding))
  • - (Left-justifies the variable value)
                    - (左调整变量值)
  • [0-9] (Specifies the minimum width held of to the variable value)
                    [0-9](指定变量值的最小宽度)
  • .[0-9] (Specifies the number of decimal digits or maximum string length)
                    .[0-9](指定十进制数值或最大字符串长度)

            
Note: If multiple additional format values are used, they must be in the same order as above.
            注意:如果使用附加格式值,那么它必须与上述顺序相同
            
        
        
            argarray
            Required. An array with arguments to be inserted at the % signs in the format string
            必要参数。指定在格式化字符串中插在%之后的带有自变量的数组对象
        
   
Tips and Notes
提示和注意点
Note: If there are more % signs than arguments, you
must use placeholders. A placeholder is inserted after the % sign, and
consists of the argument- number and "\$". See example three.
注意:注意:如果这里的%比自变量更多,你必须使用占位符[placeholders]。占位符是安插在%之后的,它是由自变量-数字和“\$”组成的。具体可以见案例3。
Tip: Related functions: fprintf(), printf(), sprintf(), vfprintf(), and vprintf().
提示:相关函数:printf(), sprintf(), vfprintf(), vprintf(), 和 vsprintf()
Example 1
案例1
   
        
            
            
            
        
   
The output of the code above will be:
上述代码将输出下面的结果:
   
        
            
            Hello world. Day number 123
            
        
   
Example 2
案例2
   
        
            
            
            
        
   
The output of the code above will be:
上述代码将输出下面的结果:
   
        
            
            123.000000456.000000
            
        
   
Example 3
案例3
Use of placeholders:
使用占位符:
   
        
            
            
            
        
   
The output of the code above will be:
上述代码将输出下面的结果:
   
        
            
            With 2 decimals: 123.00
With no decimals: 123
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/25952/showart_273300.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP