首页 > 其他分享 >printf, fprintf, sprintf, vsprintf, snprintf, vsnprintf之间的用法和区别

printf, fprintf, sprintf, vsprintf, snprintf, vsnprintf之间的用法和区别

时间:2023-12-19 17:33:36浏览次数:26  
标签:vsnprintf const snprintf format int char fprintf sprintf ...

1、printf是打印格式化字符串,返回值是成功打印的字符数;

int printf(const char *format, ...); 

 

2、fprintf是将格式化数据写入到指定文件流中;

int fprintf(FILE *stream, const char *format, ...); 

 

3、sprintf是将格式化的数据写入到指定字符串;

int sprintf(char *str, const char *format, ...); 

 

4、vsprintf与sprintf类似,不同之处在于它使用可变参数列表(va_list)来传递参数,而不是通过参数列表中的省略号...来传递。

int vsprintf (char * str, const char * format, va_list arg);

 

5、snprintf与sprintf类似,但在此基础上加入了写入最大字符数目n的限制,可以防止缓冲区溢出的安全漏洞,更加安全。

int snprintf(char *str, size_t size, const char *format, ...); 

 

6、vsnprint也是与vsprintf类似,在其基础上加入了下入最大字符数目n的限制,更加安全。函数的返回值是实际尝试写入的字符数(不包括结尾的空字符),如果未能完全写入,则返回值等于n。

int vsnprintf (char * s, size_t n, const char * format, va_list args); 

标签:vsnprintf,const,snprintf,format,int,char,fprintf,sprintf,...
From: https://www.cnblogs.com/freecheng/p/17913763.html

相关文章

  • disp函数/fprintf函数/arrayfun函数
    disp命令只能打印多个变量的值打印多个变量时,可以把它们放在一个数组中或结构体中fprintf命令打印多个变量fpritf(fileID,formatSpec,A1,A2,A3...)arrayfun(func,A)将func应用于A的每个元素functiony=f(x)...endx=-2:1:2;y=arrayfun(@f,x);plot(x,y)......
  • sprintf、snprintf、vsprintf、asprintf、vasprintf函数
    1.sprintfexternintsprintf(char*__restrict__s,constchar*__restrict__format,...);2.snprintf/*MaximumcharsofoutputtowriteinMAXLEN.*/externintsnprintf(char*__restrict__s,size_t__maxlen,......
  • fprintf
    fprintf是一个标准C库函数,用于将格式化的输出写入到指定文件流中。它的函数原型如下:intfprintf(FILE*stream,constchar*format,...);参数:stream:指向FILE结构的指针,表示要写入的目标文件流。format:格式化字符串,包含了输出的格式和要插入的数据,类似于printf函......
  • fprintf()函数
    fprintf()用于文件操作#include<stdio.h>intfprintf(FILE*stream,constchar*format,...);fprintf()函数根据指定的format(格式)发送信息(参数)到由stream(流)指定的文件.因此fprintf()可以使得信息输出到指定的文件.比如charname[20]="Mary";FILE*out;out=f......
  • 直接“printf”到char数组字符串——C语言snprintf函数
    注:我写这个只是为了备注并介绍一下这个神器。有关它的更详细用法,互联网的各个角落都不缺少资料。如果您和曾经的我一样是C语言的初学者,您有可能时常遇到那些“奇异”的字符串处理问题,例如,int里的数转成char数组字符串类型,在char数组中间插入或者删除什么东西,等等。要是采用传统方......
  • C语言snprintf追加拼接字符串
    原文地址:https://www.cnblogs.com/liqinglucky/p/snprintf.html在使用log函数打印时想打印整个结构体的值出来,但是结构体比较大,如果用log函数一行一行打印显示效果不好。就想用snprintf追加拼接字符串到一个buffer里,最后再把整个buffer打印出来。这样可以方便的调整buffer里的内......
  • sprintf fprintf用法区别
    1、输出目标不一样printf:输出到标准输出sprintf输出到指定字符串中,参数比printf多了一个char*(目标字符串地址)fprintf输出到指定文件设备中,参数比printf多了一个文件指针file*2、原型1、intfprintf(file*stream,constchar*format,……)fprint......
  • fprintf()函数的运用
    fprintf()用于文件操作#include<stdio.h>intfprintf(FILE*stream,constchar*format,...);fprintf()函数根据指定的format(格式)发送信息(参数)到由stream(流)指定的文件.因此fprintf()可以使得信息输出到指定的文件.比如charname[20]="Mary";FILE*out;o......
  • c语言之各种printf(printf, sprintf, snprintf, swprintf, fprintf, fwprintf, vsprin
    一、v|s|f|n|w的含义v:参数作为va_list一个整体传入s:输出对象为内存缓冲区(char*,wchar_t*)f:输出对象为文件流(char*,wchar_t*)w:宽字符串版本n......
  • 【c&c++】C语言snprintf()函数用法
    一、函数原型snprintf(),为函数原型intsnprintf(char*str,size_tsize,constchar*format,...)。二、函数介绍将可变个参数(...)按照format格式化成字符串,然后将其......