c语言snprintf函数简介

函数原型:int snprintf(char* dest_str,size_t size,const char* format,...);

所需头文件:#include<stdio.h>

函数功能:先将可变参数 “…” 按照format的格式格式化为字符串,然后再将其拷贝至dest_str中。

 

注意事项:如果格式化后的字符串长度小于size,则将字符串全部拷贝至dest_str中,并在字符串结尾处加上‘\0’;

如果格式化后的字符串长度大于或等于size,则将字符串的(size-1)拷贝至dest_str中,然后在字符串结尾处加上’\0’.

函数返回值是 格式化字符串的长度。

#include <stdio.h>  
#include <stdlib.h>  
#include <string.h>  

int main(void){  

    char dest_str[1024];  
    memset(dest_str,0,sizeof(dest_str));  

    char *s1 = "Linux C程序设计";  
    int size = strlen(s1);  
    int year = 2017;  
    int month = 9;  
    int day = 8;  

    snprintf(dest_str,sizeof(dest_str),"字符串:%s\n长度是:%d\n今天是:%d年%d月%d日\n",s1,size,year,month,day);  

    printf("%s",dest_str);  

    return 0;  
}  

运行结果:

字符串:Linux C程序设计
长度是:19
今天是:2017年9月8日

 

posted on 2019-01-30 17:33  忠诚的卫士  阅读(505)  评论(0编辑  收藏  举报

导航