输出
缓冲区里的的值取决于格式说明符(即"%")。
如果写入的是文字,此函数给写入的文字的末尾追加一个'\0'。
函数的返回值是写入的长度,但不包括最后的'\0'。
编辑本段语法
int wsprintf(
LPCTSTRlpFmt, // 格式字符串
...) // 需输出的参数;
;多少个参数都可以的
不过如果
缓冲区和写进缓冲区的数据类型一样,可以不使用格式字符串。例: char* a=new char;
char* b="abcd";
wsprintf(a,b);
cout<<a<<endl;
输出结果为: abcd
我们在接触C语言的时候还接触过一个sprintf()的函数,
用法和wsprintf()基本一样,区别在于:
wsprintf()包含在头文件
windows.h中
sprintf()包含在头文件
stdio.h中。
wsprintf其实分为 wsprintfA 和 wsprintfW,前者对应 sprintf,后者对应 wsprintf。
wsprintf 有 1024
字符限制,而且不支持浮点数。
所以注意了,该函数不支持浮点数的输入输出
编辑本段用法
int wsprintf( LPTSTR lpOut, // 输出缓冲区,最大为1024字节
LPCTSTR lpFmt, // 格式字符串 ,
... // 需输出的参数);
使用此函数可将数字转为字符串;
例:int x=6;
LPTSTR szBuffer=new TCHAR[1024];);//定义并申请输入
缓冲区空间
wsprintf(szBuffer,“%d“,x);//应用
另外:
MessageBox(NULL,szBuffer,““,MB_OK);