unicode ascii
生活随笔
收集整理的這篇文章主要介紹了
unicode ascii
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
在vs2008中有設(shè)置字符集選項:工程->Properties->Configuration Properties->General::Character Set?? 如下圖:
Not Set默認使用多字節(jié)
Use Unicode Character Set使用寬字節(jié)(UTF-16)
Use Multi-Byte Character Set使用多字節(jié)
具體定義如下:
typedef unsigned short wchar_t;
typedef char CHAR;
typedef wchar_t WCHAR;
// Poniter to 8-bit character(s)
typedef CHAR *PCHAR;
typedef CHAR *PSTR;
typedef CONST CHAR *PCSTR;
// Poniter to 16-bit character(s)
typedef WCHAR *PWCHAR;
typedef WCHAR *PWSTR;
typedef CONST WCHAR *PCWSTR;
?
Unicode 與 ANSI 字符的轉(zhuǎn)換
int MultiByteToWideChar(UINT CodePage,DWORD dwFlags,LPCSTR lpMultiByteStr,int cchMultiByte,LPWSTR lpWideCharStr,int cchWideChar); int WideCharToMultiByte(UINT CodePage,DWORD dwFlags,LPCWSTR lpWideCharStr,int cchWideChar,LPSTR lpMultiByteStr, int cchMultiByte, LPCSTR lpDefaultChar, LPBOOL pfUsedDefaultChar ); 具體使用方法: 1.參數(shù)一:CodePage 使用CP_ACP代碼頁就實現(xiàn)了ANSI與Unicode之間的轉(zhuǎn)換。使用CP_UTF8代碼頁就實現(xiàn)了UTF-8與Unicode之間的轉(zhuǎn)換。 2.參數(shù)二:dwFlags 該參數(shù)允許我們進行額外的控制(一般情況下使用 0) 3.參數(shù)三:lpMultiByteStr & lpWideCharStr 指定要轉(zhuǎn)換的字符串 4.參數(shù)四:cchMultiByte & cchWideChar 參數(shù)指定字符串的長度(字節(jié)數(shù)),如果傳值-1,函數(shù)便可以自動判斷字符串的長度。MultiByteToWideChar調(diào)用返回的值*sizeof(wchar_t),而WideCharToMultiByte調(diào)用返回的值就是確保轉(zhuǎn)換成功的字節(jié)數(shù)。 5.參數(shù)五:lpWideCharStr & lpMultiByteStr 內(nèi)存緩沖區(qū),其內(nèi)存地址由參數(shù)指定。 6.參數(shù)六: 緩沖區(qū)最大長度(字符不是字節(jié)),如果傳入值為0,函數(shù)就不會執(zhí)行轉(zhuǎn)換,而是返回一個字符數(shù)。
?
轉(zhuǎn)載于:https://www.cnblogs.com/zhangzfan/p/4071583.html
總結(jié)
以上是生活随笔為你收集整理的unicode ascii的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: oracle删除当前用户下所有表
- 下一篇: Lucence.Net学习+盘古分词