2007年11月14日 星期三

strlen lstrlen

丟了WCHAR的給strlen計算長度
發現有error
'strlen' : cannot convert parameter 1 from 'unsigned short *' to 'const char *'

微軟電子書苑
有說明針對寬字元的處理
包含
計算長度
比較長度
連接長度

複製長度
大致上 原function name 加上 l (小寫L)

用lstrcat後面接上的字元 要加上L處理unicode
ex.
#define databuffersize 50
WCHAR wccommand[databuffersize] = L"(xxx";
lstrcat(wccommand,L")");

此外
wchar 是為了 unicode 而生的
windows 提供 unicode 的 function
IsDBCSLeadByte
IsDBCSLeadByteEx
MultiByteToWideChar
將 a character string 轉換成 wide-character string (it means uni-code)
TranslateCharsetInfo
WideCharToMultiByte

透過Facebook分享

沒有留言: