最近一直在写一个小项目,要用到snprintf()函数,所以今天想写一篇博客记录一下
有什么错误的地方还请大家指出来,谢谢!
一、snprintf()函数的原型
int snprintf(char* dest_str,size_t size,const char* format,…);
二、snprintf()函数的功能
先将可变参数 “…” 按照format的格式格式化为字符串,然后再将其拷贝至dest_str中。
三、snprintf()函数的返回值
成功返回源串的长度(strlen, 不含’\0’)
失败返回负值
snprintf()的代码示例
#include <stdio.h>
#include <string.h>
int main (int argc, char **argv)
{
char dest_str[1024];
memset(dest_str, 0, sizeof(dest_str));//对数组清0,因为数组在栈中申请的内存空间,数组的内容为随机值
int year = 1998;
int month = 9;
int day = 3;
snprintf(dest_str, sizeof(dest_str),"马坤的生日是%d年%d月%d日\n",year, month, day);//格式化字符串
printf("%s", dest_str);
return 0;
}
代码运行结果: