unicode ascii
生活随笔
收集整理的這篇文章主要介紹了
unicode ascii
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在vs2008中有設置字符集選項:工程->Properties->Configuration Properties->General::Character Set?? 如下圖:
Not Set默認使用多字節
Use Unicode Character Set使用寬字節(UTF-16)
Use Multi-Byte Character Set使用多字節
具體定義如下:
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 字符的轉換
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.參數一:CodePage 使用CP_ACP代碼頁就實現了ANSI與Unicode之間的轉換。使用CP_UTF8代碼頁就實現了UTF-8與Unicode之間的轉換。 2.參數二:dwFlags 該參數允許我們進行額外的控制(一般情況下使用 0) 3.參數三:lpMultiByteStr & lpWideCharStr 指定要轉換的字符串 4.參數四:cchMultiByte & cchWideChar 參數指定字符串的長度(字節數),如果傳值-1,函數便可以自動判斷字符串的長度。MultiByteToWideChar調用返回的值*sizeof(wchar_t),而WideCharToMultiByte調用返回的值就是確保轉換成功的字節數。 5.參數五:lpWideCharStr & lpMultiByteStr 內存緩沖區,其內存地址由參數指定。 6.參數六: 緩沖區最大長度(字符不是字節),如果傳入值為0,函數就不會執行轉換,而是返回一個字符數。
?
轉載于:https://www.cnblogs.com/zhangzfan/p/4071583.html
總結
以上是生活随笔為你收集整理的unicode ascii的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: oracle删除当前用户下所有表
- 下一篇: myeclipse 注册码生成代码(6.