国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

char* 轉(zhuǎn) LPCWSTR 解決方案

2019-11-06 06:16:39
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

在Windows編程中,經(jīng)常會(huì)碰到字符串之間的轉(zhuǎn)換,char*轉(zhuǎn)LPCWSTR也是其中一個(gè)比較常見(jiàn)的轉(zhuǎn)換。下面就列出幾種比較常用的轉(zhuǎn)換方法。

1、通過(guò) MultiByteToWideChar 函數(shù)轉(zhuǎn)換

MultiByteToWideChar函數(shù)是將多字節(jié)轉(zhuǎn)換為寬字節(jié)的一個(gè)API函數(shù),它的原型如下:

int MultiByteToWideChar(  

  UINT CodePage,         // code page  

  DWord dwFlags,         // character-type options  

  LPCSTR lpMultiByteStr, // string to map  

  int cbMultiByte,       // number of bytes in string  

  LPWSTR lpWideCharStr,  // wide-character buffer  

  int cchWideChar        // size of buffer  

);

LPCWSTR實(shí)際上也是CONST WCHAR *類(lèi)型

char* szStr = "測(cè)試字符串";  

WCHAR wszClassName[256];  

memset(wszClassName,0,sizeof(wszClassName));  

MultiByteToWideChar(CP_ACP,0,szStr,strlen(szStr)+1,wszClassName,  

sizeof(wszClassName)/sizeof(wszClassName[0]));

2、通過(guò) T2W 轉(zhuǎn)換宏

char* szStr = "測(cè)試字符串";    

CString str = CString(szStr);  

USES_CONVERSION;  

LPCWSTR wszClassName = new WCHAR[str.GetLength()+1];  

wcscpy((LPTSTR)wszClassName,T2W((LPTSTR)str.GetBuffer(NULL)));  

str.ReleaseBuffer();

3、通過(guò) A2CW 轉(zhuǎn)換

char* szStr = "測(cè)試字符串";    

CString str = CString(szStr);  

USES_CONVERSION;  

LPCWSTR wszClassName = A2CW(W2A(str));  

str.ReleaseBuffer();

上述方法都是UniCode環(huán)境下測(cè)試的。


發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 土默特右旗| 广元市| 大英县| 轮台县| 崇州市| 长沙县| 卢龙县| 长泰县| 民勤县| 湾仔区| 迭部县| 页游| 天津市| 麦盖提县| 西安市| 金沙县| 利辛县| 太仓市| 浪卡子县| 武鸣县| 正镶白旗| 庆城县| 鄂托克旗| 安康市| 桐庐县| 麟游县| 佛学| 民和| 砀山县| 德安县| 泗水县| 米易县| 石城县| 通州市| 石柱| 白水县| 伊金霍洛旗| 珲春市| 包头市| 陆河县| 福建省|