首页 > 代码库 > snprintf函数

snprintf函数

snprintf

接口形式:int sprintf ( char * str, const char * format, ... );
功能:Write formatted output to sized buffer   将内容格式化写入到buffer中

参数:

Parameters

s
Pointer to a buffer where the resulting C-string is stored.
The buffer should have a size of at least n characters.
n
Maximum number of bytes to be used in the buffer.
The generated string has a length of at most n-1, leaving space for the additional terminating null character.
size_t is an unsigned integral type.
format
C string that contains a format string that follows the same specifications asformat in printf (seeprintf for details).

如果输入的数据超过了n-1个长度(留一个字符位置给‘\0‘),则超出的部分不予保留。但是被记录到返回值的value中。结尾的空字符会自动加上。


例子:

/* snprintf example */
#include <stdio.h>

int main ()
{
  char buffer [100];
  int cx;

  cx = snprintf ( buffer, 100, "The half of %d is %d", 60, 60/2 );

  snprintf ( buffer+cx, 100-cx, ", and the half of that is %d.", 60/2/2 );

  puts (buffer);

  return 0;
}

output

The half of 60 is 30, and the half of that is 15.

snprintf函数