C++常用类型转换
char是C語言標準數據類型,字符型,至于由幾個字節組成通常由編譯器決定,一般一個字節。Windows為了消除各編譯器的差別,重新定義了一些數據類型。
CHAR為單字節字符。還有個WCHAR為Unicode字符,即不論中英文,每個字有兩個字節組成。如果當前編譯方式為ANSI(默認)方式,TCHAR等價于CHAR,如果為Unicode方式,TCHAR等價于WCHAR。LPCSTR 相當于CONST CHAR * 和LPSTR 相當于CHAR *。
1.首先是把TCHAR轉為char
?
//將TCHAR轉為char //*tchar是TCHAR類型指針,*_char是char類型指針 TcharToChar (const TCHAR * tchar, char * _char) {int iLength ; //獲取字節長度 iLength = WideCharToMultiByte(CP_ACP, 0, tchar, -1, NULL, 0, NULL, NULL); //將tchar值賦給_char WideCharToMultiByte(CP_ACP, 0, tchar, -1, _char, iLength, NULL, NULL); }然后是把char轉為TCHAR
?
//同上 CharToTchar (const char * _char, TCHAR * tchar) {int iLength ;iLength = MultiByteToWideChar (CP_ACP, 0, _char, strlen (_char) + 1, NULL, 0) ;MultiByteToWideChar (CP_ACP, 0, _char, strlen (_char) + 1, tchar, iLength) ; }總結
- 上一篇: 公司管理项目管理中的技巧
- 下一篇: C++中map的使用