複製鏈接
請複製以下鏈接發送給好友

wsprintf

鎖定
函數wsprintf [1]  ()將一系列的字符和數值輸入到緩衝區。輸出緩衝區裏的的值取決於格式説明符(即"%")。如果寫入的是文字,此函數給寫入的文字的末尾追加一個'\0'。函數的返回值是寫入的長度,但不包括最後的'\0'。
中文名
wsprintf
外文名
wsprintf
返回值類型
int
調用約定
__cdecl
參數類型
(LPTSTR, LPCTSTR, ...)

wsprintf函數作用

函數wsprintf()將一系列的字符和數值輸入到緩衝區。
輸出緩衝區裏的的值取決於格式説明符(即"%")。
如果寫入的是文字,此函數給寫入的文字的末尾追加一個'\0'。
函數的返回值是寫入的長度,但不包括最後的'\0'。

wsprintf函數聲明

int __cdecl wsprintf(_Out_ LPTSTR lpOut,_In_ LPCTSTR lpFmt,_In_...);

wsprintf基本參數

  • lpOut [out]
  • 類型: LPTSTR接收緩衝區格式化輸出. 緩衝區最大為 1,024 bytes.
  • lpFmt [in]
  • 類型: LPCTSTR控制輸出的格式.
  • ... [in]
  • 可變參數

wsprintf具體用法

int wsprintf( LPTSTR lpOut, // 輸出緩衝區,最大為1024字節
LPCTSTR lpFmt, // 格式字符串 ,
... // 需輸出的參數);
使用此函數可將數字轉為字符串;
例:
#include <windows.h>
#include <tchar.h>

int main()
{
    int x = 6;
    TCHAR szBuffer[1024] = {0};//定義並申請輸入緩衝區空間
    wsprintf(szBuffer,_T("%d"),x);//應用
    MessageBox(NULL,szBuffer,NULL,MB_OK);
    return 0;
}
備註:
  • %d 格式化為十進制有符號整數輸出到緩衝區
  • %ld格式化為十進制有符號長整型數輸出到緩衝區
  • %i,li 等同 %d,%ld
  • %u 格式化為十進制無符號整數輸出到緩衝區
  • %lu格式化為十進制無符號長整型數輸出到緩衝區
  • %s 格式化為字符串輸出到緩衝區
  • %c 格式化為單個字符輸出到緩衝區
  • %x 格式化為無符號以十六進制表示的整數(a-f小寫輸出)輸出到緩衝區
  • %X 格式化為無符號以十六進制表示的整數(A-F大寫輸出)輸出到緩衝區
  • %0 格式化為無符號以八進制表示的整數輸出到緩衝區
  • %p 格式化為十六進制指針地址輸出到緩衝區
  • Ix 在64位上格式化為無符號以十六進制表示的長整型數,在32位上格式化為無符號以十六進制表示的整型數(a-f小寫輸出)
  • IX 在64位上格式化為無符號以十六進制表示的長整型數,在32位上格式化為無符號以十六進制表示的整型數(a-f大寫寫輸出)
  • %和字母之間可以用數字來指定輸出時佔用的位長,這時輸出的位長不夠時函數會用空格來填齊
  • 表示位長的數字前可以加0來表示填齊時用”0”而非空格,如%08x表示輸出為8位前面用0填齊的16進制數
參考資料