
大家好,又见面了,我是你们的朋友全栈君。
在《Window核心编程》,多字节和宽字节之间转换比较麻烦的,MultiByteToWideChar函数和WideCharToMultiByte函数有足够多的参数的意义让我们去理解。那么使用ATL的一个很好的字符串的转换宏:A2W和W2A。
char:8位字节类型,表示ASCII码 WCHAR:16位字符类型,表示Unicode字符 typedef wchar_t WCHAR; typedef unsigned short wchar_t;
USES_CONVERSION;
CString cstring;
char* achar = "qwer";
const WCHAR* wchar = A2W(achar);
cstring = wchar; USES_CONVERSION; CString cstring;
WCHAR* wchar = _T("qwer");
const char* achar = W2A(wchar);
cstring = wchar;USES_CONVERSION;
char* achar = "qwer";
CString cstring = A2T(achar);USES_CONVERSION;
CString cstring = _T("qwer");
char* achar = T2A(cstring); #define _T(x) __T(x)
#ifdef _UNICODE
#define __T(x) L ## x
#else
#define __T(x) x发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/170937.html原文链接:https://javaforall.cn