vsnprintf()函数 & vfprintf()函数

#include  
int vsnprintf(char *str, size_t size, const char *format, va_list ap);
函数说明:将可变参数格式化输出到一个字符数组
举例:

#include 
#include 

void test(const char *format, ...)
{
    char buf[4069];
    
    va_list list;
    va_start(list, format);
    vsnprintf(buf, 4069, format, list);
    va_end(list);
    
    printf("%s\n", buf);
}

int main(void)
{
    test("%d_%s", 6, "abc");
    
    return 0;
}

输出结果为:6_abc


int vfprintf(FILE *stream, const char *format, va_list arg);
函数说明:将结果输出到参数stream指定的文件中。
C语言printf家族函数的成员:

#include 

int printf(const char *format, ...); //输出到标准输出
int fprintf(FILE *stream, const char *format, ...); //输出到文件
int sprintf(char *str, const char *format, ...); //输出到字符串str中
//按size大小输出到字符串str中
int snprintf(char *str, size_t size, const char *format, ...);
                                     

以下函数功能与上面的一一对应相同,只是在函数调用时,把上面的...对应的一个个变量用va_list调用所替代。

#include 

int vprintf(const char *format, va_list ap);
int vfprintf(FILE *stream, const char *format, va_list ap);     
int vsprintf(char *str, const char *format, va_list ap);
int vsnprintf(char *str, size_t size, const char *format, va_list ap);


 

你可能感兴趣的:(C++,null,include,struct)