参考菜鸟教程的C库函数
snprintf函数:C标准库函数-<stdio.h>
C库函数int snprintf(char *str, size_t size, const char *format, ...)可以将可变参数(...)按照format格式化成字符串,并且将字符串复制到str中,size为要写入的字符的最大数目,超过size会被截断
参数:
str:目标字符串
size:拷贝字符串的字节数
format:格式化成字符串的格式
...:可变参数
返回值:
(1)如果格式化后的字符串长度小于等于size,则会把字符串全部复制到str中,并且给最后添加结束字符串‘\0’;
(2)如果格式化后的字符串大于size,超过size的部分会被截断,只会将其中的size-1个字符copy至str中,并在最后加上‘\0’,返回值为格式化后的字符串的长度,不是传参进去的size
实例:
#include <stdio.h>
int main()
{
char buffer[50];
char* s = "runoobcom";
// 读取字符串并存储在 buffer 中
int j = snprintf(buffer, 6, "%s\n", s);
// 输出 buffer及字符数
printf("string:\n%s\ncharacter count = %d\n", buffer, j);
return 0;
}
结果为:
string:
runoo
character count = 10