在C語言中格式化字符串可以使用printf,但是在WINDOWS編程設(shè)計中卻行不通了,但是卻有變通的方法,那就是用 wsprintf這個函數(shù) 它的格式如下:
wsprintf(緩沖區(qū),格式,要格式化的值);
第一個參數(shù)是字符緩沖區(qū),后面是格式字符串,wsprintf不是將格式化結(jié)果寫到標(biāo)準(zhǔn)輸出,而是將其寫入緩沖區(qū)中,該函數(shù)返回該字符串的長度。
比如我們想通過MessageBox來輸出一個整形變量的值,可以用以下代碼實現(xiàn):
char szBuffer[100];
ing number=100;
wsprintf(szBuffer, “%d”,number);
MessgaeBox(NULL,szBrffer,TEXT(“格式化字符串”),0);
這個函數(shù)除了將內(nèi)容格式化輸出到第一個參數(shù)所提供的字符串緩沖區(qū)以外,其它功能與printf函數(shù)相同
wsprintf對應(yīng)的字符串是寬字符型wchar_t,即一個字符占用2個字節(jié)的內(nèi)存空間.
sprintf對應(yīng)的字符串是字符類型為char,幾一個字符占用1個字節(jié)的內(nèi)存空間.
sprintf是用于對ASCII碼的127個字符進(jìn)行操作,wsprintf是對UNICODE的多語言字符進(jìn)行操作.
如:
sprintf(buffer, "ascii");
wsprintf(buffer, L"unicode");
來源:[url]http://www.cppblog.com/liuxubin/archive/2007/08/14/29993.html[/url]
文章來源:
http://wintys.blog.51cto.com/425414/111494
posted on 2009-03-18 12:02
天堂露珠 閱讀(228)
評論(0) 編輯 收藏 所屬分類:
C++