格式化字符串函数:wsprintf()
函数wsprintf()将一系列的字符和数值输入到缓冲区。
输出缓冲区里的的值取决于格式说明符(即"%")。
如果写入的是文字,此函数给写入的文字的末尾追加一个'\0'。
函数的返回值是写入的长度,但不包括最后的'\0'。
函数声明:
int
__cdecl wsprintf(
_Out_
LPTSTR
lpOut,
_In_
LPCTSTR
lpFmt,
_In_...);
int wsprintf( LPTSTR lpOut, // 输出缓冲区,最大为1024字节
LPCTSTR lpFmt, // 格式字符串 ,
... // 需输出的参数);
使用此函数可将数字转为字符串;
例如:
SetTextAlign(hdc, TA_RIGHT | TA_TOP);
TextOut(hdc, cxClient - 2, cyClient - cyChar, szBuffer, wsprintf(szBuffer, "窗口尺寸:%5d %5d", cxClient, cyClient));
SetTextAlign(hdc, TA_LEFT | TA_TOP);
在窗口的右下角输出窗口的尺寸
备注:
-
%d 格式化为十进制有符号整数输出到缓冲区
-
%u 格式化为十进制无符号整数输出到缓冲区
-
%s 格式化为字符串输出到缓冲区
-
%c 格式化为单个字符输出到缓冲区
-
%e 格式化为指数形式的浮点数输出到缓冲区
-
%x 格式化为无符号以十六进制表示的整数(a-f小写输出)输出到缓冲区
-
%X 格式化为无符号以十六进制表示的整数(a-f大写输出)输出到缓冲区
-
%0 格式化为无符号以八进制表示的整数输出到缓冲区
-
%g 格式化为自动选择合适的表示法输出到缓冲区