sprintf_chk

问题描述:sprintf函数的用法是什么? 大家好,给大家分享一下一个有趣的事情,很多人还不知道这一点。下面详细解释一下。现在让我们来看看!

sprintf函数的用法是什么?

sprintf_chk的相关图片

sprintf 是个变参函数,定义如下:

int sprintf( char *buffer, const char *format [, argument] ... );。

除了前两个参数类型固定外,后面可以接任意多个参数。而它的精华,显然就在第二个参数:格式化字符串上。

printf 和sprintf 都使用格式化字符串来指定串的格式,在格式串内部使用一些以“%”开头的格式说明符(format specifications)来占据一个位置,在后边的变参列表中提供相应的变量,最终。

函数就会用相应位置的变量来替代那个说明符,产生一个调用者想要的字符串。

扩展资料

sprintf的第一个参数是目的字符串,如果不指定这个参数,执行过程中出现 "该程序产生非法操作,即将被关闭...."的提示。

因为C语言在进行字符串操作时不检查字符串的空间是否够大,所以可能会出现数组越界而导致程序崩溃的问题。

即使碰巧,程序没有出错,也不要这么用,因为早晚会出错。所以一定要在调用sprintf之前分配足够大的空间给buf。

C语言sprintf怎么使用?的相关图片

C语言sprintf怎么使用?

在c语言中sprintf()函数的用法如下:

1、该函数包含在stdio.h的头文件中。

2、sprintf和平时我们常用的printf函数的功能很相似。sprintf函数打印到字符串中(要注意字符串的长度要足够容纳打印的内容,否则会出现内存溢出),而printf函数打印输出到屏幕上。sprintf函数在我们完成其他数据类型转换成字符串类型的操作中应用广泛。

3、sprintf函数的格式:

除了前两个参数固定外,可选参数可以是任意个。buffer是字符数组名;format是格式化字符串(像:”%3d%6.2f%#x%o”,%与#合用时,自动在十六进制数前面加上0x)。只要在printf中可以使用的格式化字符串,在sprintf都可以使用。

使用的小技巧

sprintf的第一个参数是目的字符串,如果不指定这个参数,执行过程中出现 "该程序产生非法操作,即将被关闭...."的提示。

因为C语言在进行字符串操作时不检查字符串的空间是否够大,所以可能会出现数组越界而导致程序崩溃的问题。

即使碰巧,程序没有出错,也不要这么用,因为早晚会出错。所以一定要在调用sprintf之前分配足够大的空间给buf。

C语言sprintf怎么使用?的相关图片

C语言sprintf怎么使用?

sprintf函数的功能是把格式化的数据写入某个字符串缓冲区。

int sprintf( char *buffer, const char *format, [ argument] … );。

buffer:char型指针,指向将要写入的字符串的缓冲区。

format:格式化字符串。

[argument]...:可选参数,可以是任何类型的数据。

示例

int main()

    char buffer[50];//大小50的char字符数组。

    int n,a=5,b=3;//。

    n=sprintf(buffer,"%d + %d = %d",a,b,a+b);//把a,b,a+b以第二个参数的形式写入buffer。

    printf("[%s]is a string %d chars long\n",buffer,n);/*“格式输出函数”*/。

    return 0;

输出结果[5 + 3 = 8] is a string 13 chars long。

sprintf格式的规格如下所示。[]中的部分是可选的。

%[指定参数][标识符][宽度][.精度]指示符。

若想输出'%'本身时, 请使用'%%'处理。

1. 处理字符方向。负号时表示从后向前处理。

2. 填空字元。 0 的话表示空格填 0;空格是内定值,表示空格就放着。

3. 字符总宽度。为最小宽度。

4. 精确度。指在小数点后的浮点数位数。

转换字符

%% 印出百分比符号,不转换。

%c 整数转成对应的 ASCII 字元。

%d 整数转成十进位。

%f 倍精确度数字转成浮点数。

%o 整数转成八进位。

%s 整数转成字符串。

%x 整数转成小写十六进位。

%X 整数转成大写十六进位。

C++中,读取一系列文件,文件名为1,2,3……,这样,文件名中就会有变量,怎么解决呢的相关图片

C++中,读取一系列文件,文件名为1,2,3……,这样,文件名中就会有变量,怎么解决呢

sprintf跟printf在用法上几乎一样,只是打印的目的地不同而已,前者打印到字符串中,后者则直接在命令行上输出。

如:

//把整数123 打印成一个字符串保存在s 中。

sprintf(s, "%d", 123); //产生"123"。

可以指定宽度,不足的左边补空格:

sprintf(s, "%8d%8d", 123, 4567); //产生:" 123 4567"。

当然也可以左对齐:

sprintf(s, "%-8d%8d", 123, 4567); //产生:"123 4567"。

也可以按照16 进制打印:

sprintf(s, "%8x", 4567); //小写16 进制,宽度占8 个位置,右对齐。

sprintf(s, "%-8X", 4568); //大写16 进制,宽度占8 个位置,左对齐。

使用sprintf函数时应该注意什么问题

说白了就是后缀名。

例如:

XXX.JPG

那么这个文件的格式就是JPG

还有

XXX.BMP 就是BMP格式。

常见 的有

这个太多太多了,很难讲,只能说说常见的.。

A

ACE:Ace压缩档案格式

ACT:Microsoft office助手文件 。

AIF,AIFF:音频互交换文件,Silicon Graphic and Macintosh应用程序的声音格式 。

ANI:Windows系统中的动画光标 。

ARC:LH ARC的压缩档案文件 。

ARJ:Robert Jung ARJ压缩包文件 。

ASD:Microsoft Word的自动保存文件;Microsoft高级流媒体格式(microsoft advanced streaming 。

format,ASF)的描述文件;可用NSREX打开 Velvet Studio例子文件 。

ASF:Microsoft高级流媒体格式文件 。

ASM:汇编语言源文件,Pro/E装配文件 。

ASP:动态网页文件;ProComm Plus安装与连接脚本文件;Astound介绍文件 。

AST:Astound多媒体文件;ClarisWorks“助手”文件 。

Axx:ARJ压缩文件的分包序号文件,用于将一个大文件压至几个小的压缩包中(xx取01-99的数字)

A3L:Authorware 3.x库文件 。

A4L:Authorware 4.x库文件 。

A5L:Authorware 5.x库文件 。

A3M,A4M:Authorware Macintosh未打包文件 。

A3W,A4W,A5W:未打包的Authorware Windows文件 。

B

BAK:备份文件

BAS:BASIC源文件

BAT:批处理文件

BIN:二进制文件

BINHex:苹果的一种编码格式 。

BMP:Windows或OS/2位图文件 。

BOOK:Adobe FrameMaker Book文件 。

BOX:Lotus Notes的邮箱文件 。

BPL:Borlard Delph 4打包库 。

BSP:Quake图形文件

BUN:CakeWalk 声音捆绑文件(一种MIDI程序) 。

C

C0l:台风波形文件

CAB:Microsoft压缩档案文件 。

CAD:Softdek的Drafix CAD文件 。

CAM:Casio照相机格式 。

CAP:压缩音乐文件格式

CAS:逗号分开的ASCⅡ文件 。

CCB:Visual Basic动态按钮配置文件 。

CCH:Corel图表文件

CCO:CyberChat数据文件 。

CCT:Macromedia Director Shockwave投影 。

CDA:CD音频轨道

CDF:Microsoft频道定义格式文件 。

CDI:Philip的高密盘交互格式 。

CDM:Visual dBASE自定义数据模块文件 。

CDR:CorelDRAW绘图文件;原始音频CD数据文件 。

CDT:CorelDRAW模板 。

CDX:CorelDRAW压缩绘图文件;Microsoft Visual FoxPro索引文件 。

CFG:配置文件

CGI:公共网关接口脚本文件 。

CGM:计算机图形元文件

CH:OS/2配置文件

CHK:由Windows磁盘碎片整理器或磁盘扫描保存的文件碎片 。

CHM:编译过的HTML文件 。

CHP:Ventura Publisher章节文件 。

CHR:字符集(字体文件)

CHT:ChartViem文件;Harvard Graphics矢量文件 。

CIF:Adaptec CD 创建器 CD映像文件 。

CIL:Clip Gallery下载包 。

CIM:SimCity 2000文件 。

CIN:OS/2改变控制文件用于跟踪INI文件中的变化 。

CLASS:Java类文件

CLP:Windows 剪贴板文件 。

CLL:Crick Software Clicker文件 。

CLS:Visual Basic类文件 。

CMD:Windows NT,OS/2的命令文件;DOS CD/M命令文件;dBASEⅡ程序文件 。

CPI:Microsoft MS-DOS代码页信息文件 。

CPL:控制面板扩展名,Corel颜色板 。

CPP:C++代码文件

CPR:Corel提供说明书文件 。

CPT:Corel 照片-绘画图像 。

CST:Macromedia Director Cast文件 。

CUR:Windows光标文件 。

D

DBF:dBASE文件,一种由Ashton-Tate创建的格式,可以被ACT!、Lipper、FoxPro、Arago、Wordtech、Xbase和类似数据库或与数据库有关产品识别;可用数据文件(能被Excel 。

97打开);Oracle 8.1.x表格空间文件 。

DBX:DataBearn图像;Microsoft Visual FoxPro表格文件 。

DCT:Microsoft Visual FoxPro数据库容器 。

DCU:Delphi编译单元文件 。

DCX:Microsoft Visual FoxPro数据库容器;基于PCX的传真图像;宏 。

DIR:MacromediaDirector文件 。

DLL:动态链接库

DOC:FrameMaker或FrameBuilder文档;Word Star文档、Word 。

Perfect文档、Microsoft:Word文档;DisplayWrite文档 。

DOT:Microsoft Word文档模板 。

DPL:Borland Delph 3压缩库 。

DRV:驱动程序

DRW:Micrografx Designer/Draw;Pro/E绘画文件 。

DSF:Micrografx Designer VFX文件 。

DSG:DOOM保存的文件

DSM:Dynamic Studio音乐模块(MOD)文件 。

DSP:Microsoft Developer Studio工程文件 。

DSQ:Corel QUERY(查询)文件 。

DST:刺绣机图形文件

DSW:Microsoft Developer Studio工作区文件 。

DTA:World Bank(世界银行)的STARS数据文件 。

DTD:SGML文档类型定义(DTD)文件 。

DTED:地面高度数字数据(图形的数据格式)文件 。

DTF:Symantec Q&A相关的数据库数据文件 。

DTM:DigiTrakker模块文件 。

DUN:Microsoft拔号网络导出文件 。

DV:数字视频文件(MIME)

DWG:AutoCAD工程图文件;AutoCAD或Generic CADD老版本的绘图格式 。

DXR:Macromedia Director受保护(不可编辑)电影文件 。

E

EDA:Ensoniq ASR磁盘映像 。

EDD:元素定义文档(FrameMaker+SGML文档)

EDE:Ensoniq EPS磁盘映像 。

EDK:Ensoniq KT磁盘映像 。

EDQ:Ensoniq SQ1/SQ2/Ks32磁盘映像 。

EDS:Ensoniq SQ80磁盘映像 。

EDV:Ensoniq VFX-SD磁盘映像 。

EFA:Ensoniq ASR文件 。

EFE:Ensoniq EPS文件 。

EFK:Ensoniq KT文件 。

EFQ:Ensoniq SQ1/SQ2/Ks32文件 。

EFS:Ensoniq SQ80文件 。

EFV:Ensoniq VFX-SD文件 。

EMD:ABT扩展模块

EMF:Windows增强元文件 。

EML:Microsoft Outlook Express邮件消息(MIME RTC822)文件 。

EXE:可执行文件(程序)

F

FAV:Microsoft Outlook导航条 。

FAX:传真类型图像

FCD:虚拟CD-ROM

FDF:Adobe Acrobat表单文档文件 。

FLA:Macromedia Flash电影 。

FND:Microsoft Explorer保存的搜索文件(Find applet)

FON:系统字体

FRT:Microsoft FoxPro报表文件 。

FRX:Visual Basic表单文本;Microsoft FoxPro报表文件 。

FXP:经Microsoft FoxPro编译的源文件 。

G

GDM:铃声、口哨声和声音板模块格式 。

GetRight:GetRight未完成的下载文件 。

GHO:Norton 克隆磁盘映像 。

GID:Windows 95全局索引文件(包括帮助状态)

GIF:CompuServe位图文件 。

GL:动画格式

GRP:程序管理组

H

HEX:Macintosh BinHex2.0文件 。

HLP:帮助文件;Date CAD Windows帮助文件 。

HPP:C++程序头文件

HQX:Macintosh BinHex 4.0文件 。

HT:HyperTerminal(超级终端)

HTM,HTML:超文本文档 。

HTT:Microsoft超文本模板 。

HTX:扩展HTML模板

I

ICO:Windows图标

IDX:Microsoft FoxPro相关数据库索引文件;Symantec Q&A相关数据库索引文件;Microsoft Outlook 。

Express文件

IMG:GEM映像

INF:信息文件

INI:初始化文件;Mwave DSP Synth的“nwsynth.ini” GMS安装;Cravis Ultrasound bank安装 。

INP:Oracle 3.0版或早期版本的表单源代码 。

INRS:INRS远程通信声频 。

INS:InstallShield安装脚本;X-Internet签字文件;Ensoniq EPS字簇设备;Cell/ⅡMAC/PC抽样设备 。

INT:中间代码,当一个源程序经过语法检查后编译产生一个可执行代码 。

IOF:Findit文档

IQY:Microsoft Internet查询文件 。

ISO:根据ISD 9660有关CD-ROM文件系统标准列出CD-ROM上的文件 。

ISP:X-Internet签字文件 。

IST:数字跟踪设备文件

ISU:InstallShield卸装脚本 。

IT:脉冲跟踪系统音乐模块(MOD)文件 。

ITI:脉冲跟踪系统设备

ITS:脉冲跟踪系统抽样,Internet文档位置 。

IV:Open Inventor中使用的文件格式 。

IVD:超过20/20微观数据维数或变量等级文件 。

IVP:超过20/20的用户子集配置文件 。

IVT:超过20/20表或集合数据文件 。

IVX:超过20/20微数据目录文件 。

IW:Idlewild屏幕保护程序 。

IWC:Install Watch文档 。

J

J62:Ricoh照相机格式 。

JAR:Java档案文件(一种用于applet和相关文件的压缩文件)

JAVA:Java源文件

JAR:Java档案文件(一种用于applet和相关文件的压缩文件)

JAVA:Java源文件

JFF,JFIF,JIF:JPEG文件 。

JPE,JPEG,JPG:JPEG图形文件 。

JS:javascript源文件 。

JSP:HTML网页,其中包含有对一个Java servlet的参考 。

K

KAR:卡拉OK MIDI文件(文本+MIDI)

L

LAB:Visual dBASE标签文件 。

LBT,LBX:Microsoft FoxPro标签文件 。

LDB:Microsoft Access加锁文件 。

LHA:LZH更换文件后缀

LOG:日志文件

LZH:LH ARC压缩档案 。

M

M1V:MPEG相关文件(MIME"mpeg"类型) 。

M3D:Corel Motion 3D动画文件 。

M3U:MPEG URL(MIME声音文件)

MAM:Microsoft Access宏 。

MAQ:Microsoft Access查询文件 。

MAR:Microsoft Access报表文件 。

MBX:Microsoft Outlook保存email格式;Eudora邮箱 。

MCW:Microsoft Word的Macintosh文档 。

MDB:Microsoft Access数据库 。

MDN:Microsoft Access空数据库模板 。

MDW:Microsoft Access工作组文件 。

MID:MIDI音乐

MMM:Microsoft多媒体电影 。

MOV:QuickTime for Windows电影 。

MP2:第二层MPEG音频文件 。

MP3:第三层MPEG音频文件 。

MPA:MPEG相关文件,MIME“mpeg类型”

MPE,MPEG,MPG:MPEG动画文件 。

MPP:Microsoft工程文件;CAD绘图文件格式 。

MPR:Microsoft FoxPro菜单(已编译)

MSI:Windows 安装器包 。

MSN:Microsoft 网络文档;Descent Mission文件 。

O

OBD:Microsoft Office活页夹 。

OBJ:对象文件

OBZ:Microsoft Office活页夹向导 。

OCX:Microsoft对象链接与嵌入定制控件 。

ODS:Microsoft Outlook Express邮箱文件 。

OFT:Microsoft Outlook模板 。

OPX:OPL扩展DLL(动态链接库)

OSS:Microsoft Office查找文件 。

OST:Microsoft Exchange / Outlook 离线文件 。

P

PAL:压缩文件

PART:Go!Zilla部分下载文件 。

PAS:Pascal源代码

PCS:PICS动画文件

PDF:Adobe Acrobat 。

可导出文档格式文件(可用Web浏览器显示);Microsoft系统管理服务器包定义文件;NetWare打印机定义文件 。

PHP,PHP3:包含有PHP脚本的HTML网页 。

PHTML:包含有PHP脚本的HTML网页;由Perl分析解释的HTML 。

PM5:Pagemaker 5.0文件 。

PM6:Pagemaker 6.0文件 。

PPS:Microsoft Powerpoint幻灯片放映 。

PPT:Microsoft Powerpoint演示文稿 。

PRF:Windows系统文件,Macromedia导演设置文件 。

PSD:Adobe photoshop位图文件 。

PSM:Protracker Studio模型格式;Epic游戏的源数据文件 。

PST:Microsoft Outlook个人文件夹文件 。

PWL:Windows 95口令列表文件 。

Q

QIF:QuickTime相关图像(MIME);Quicken导入文件 。

QT,QTM:QuickTime电影 。

QTI,QTIF:QuickTime相关图像 。

QTP:QuickTime优先文件 。

QTS:Mac PICT图像文件;QuickTime相关图像 。

QTX:QuickTime相关图像 。

R

RA:RealAudio声音文件 。

RAM:RealAudio元文件 。

RAR:RAR压缩档案(Eugene Roshall格式)

REC:录音机宏;RapidComm声音文件 。

REG:注册表文件

REP:Visual dBASE报表文件 。

RES:Microsoft Visual C++资源文件 。

RM:RealAudio视频文件 。

RMF:Rich Map格式(3D游戏编辑器使用它来保存图)

ROM:基于盒式磁带的家庭游戏仿真器文件(来自Atari 。

2600、Colecovision、Sega、Nintendo等盒式磁带里的ROM完全拷贝,在两个仿真器之间不可互修改)

Rxx:多卷档案上的RAR压缩文件(xx=1~99间的一个数字)

S

SAV:游戏保存文件

SB:原始带符号字节(8位)数据 。

SBK:Creative Labs的Soundfont 1.0 Bank文件;(Soundb laster)/EMU SonndFont v1.x 。

Bank文件

SBL:Shockwave Flash对象文件 。

SCF:Windows Explorer命令文件 。

SCH:Microsoft Schedule+1 。

SCP:拨号网络脚本文件

SCR:Windows屏幕保护;传真图像;脚本文件 。

SFX:RAR自解压档案

SHTML:含有服务器端包括(SSI)的HTML文件 。

SPL:Shockwave Flash对象;DigiTrakker抽样 。

SQL:Informix SQL查询;通常被数据库产品用于SQL查询(脚本、文本、二进制)的文件扩展名 。

STM:.shtml的短后缀形式,含有一个服务端包括(SSI)的HTML文件;Scream Tracker V2音乐模块(MOD)文件 。

STR:屏幕保护文件

SWA:在Macromedia导演文件(MP3文件)中的Shockwave声音文件 SYS:系统文件 。

T

T64:Commodore 64仿真器磁带映像文件 。

THEME:Windows 95桌面主题文件 。

TIF,TIFF:标签图像文件格式(TIFF)位图 。

TMP:Windows临时文件 。

TRM:终端文件

TXT:ASCⅡ文本格式的声音数据 。

TZ:老的压缩格式文件

V

VBA:VBase文件

VBP:Microsoft Visual Basic工程文件 。

VBW:Microsoft Visual Basic工作区文件 。

VBX:Microsoft Visual Basic用户定制控件 。

VQE,VQL:Yamaha Sound-VQ定位器文件 。

VQF:Yamaha Sound-VQ文件(可能出现标准)

VRF:Oracle 7配置文件 。

VSL:下载列表文件(GetRight)

W

WAB:Microsoft Outlook文件 。

WAD:包含有视频、玩家水平和其他信息的DOOM游戏的大文件 。

WAL:Quake 2正文文件 。

WAV:Windows波形声形 。

WBK:Microsoft Word备份文件 。

WFM:Visual dBASE Windows表单 。

WFN:在CorelDRAW中使用的符号 。

WIZ:Microsoft Word向导 。

WRL:虚拟现实模型

WWL:Microsoft Word内插器文件 。

X

XLK:Microsoft Excel备份 。

XLL:Microsoft Excel内插器文件 。

XLM:Microsoft Excel宏 。

XLS:Microsoft Excel工作单 。

XLT:Microsoft Excel模板 。

XLV:Microsoft Excel VBA模块 。

XLW:Microsoft Excel工作簿/工作区 。

Z

ZAP:Windows软件安装配置文件 。

ZIP:Zip文件

000-999:用于为老版本(或备份)文件编号(比如:被安装程序改变的CONFIG.SYS文件);又可用于为小范围的PC应用程序的多个用户相关数据文件编号 。

12M:Lotus 1-2-3 97 SmartMaster文件 。

123:Lotus 1-2-3 97文件 。

2D:VersaCAD的2维绘画文件 。

2GR,3GR:在Windows之下的VGA图形驱动程序/配置文件 。

386:在386或更高级处理器上使用的文件 。

3D:VersaCAD的3维绘画文件 。

3DM:3D NURBS建模器,Rhino 。

3DS:3D Studio(DOS下)格式文件 。

386:在386或更高级处理器上使用的文件 。

4GE:Informix 4GL编译后代码 。

4GL:Informix 4GL源代码。

原文地址:http://www.qianchusai.com/sprintf_chk.html

lw/红脸关公图片,红脸关公京剧脸谱图片

lw/红脸关公图片,红脸关公京剧脸谱图片

l-arginine,l-arginine monohydrochloride

l-arginine,l-arginine monohydrochloride

博联接入homeassistant

博联接入homeassistant

扬州怡养院-90,扬州养怡花园是安置房吗

扬州怡养院-90,扬州养怡花园是安置房吗

96209,962098是什么电话

96209,962098是什么电话

cc/快递分拣工作照片,快递分拣员工作照片

cc/快递分拣工作照片,快递分拣员工作照片

HTTP500INTERNALSERVERERROR-90

HTTP500INTERNALSERVERERROR-90

宝利恒-40,宝利恒萌宠水族体验馆招聘

宝利恒-40,宝利恒萌宠水族体验馆招聘

rear空调上是什么出现两个,空调上rear一个锁是什么意思啊

rear空调上是什么出现两个,空调上rear一个锁是什么意思啊

lw/有意境有内涵的头像,有意境有内涵的头像男高清

lw/有意境有内涵的头像,有意境有内涵的头像男高清