CString装换成const char*有两种情况:
1.字符串为ANSI字符串:
在这种情况下,只需用LPCWSTR GetBuffer(intnMinBufLength)函数将CString类型转换成LPCTSTR类型,ANSI情况下,LPCTSTR 就是 const char*,例如:
CString cstr;
const char* ch = cstr.GetBuffer(sizeof(cstr));
2.字符串为UNICODE字符串:
在这种情况下,在将CString类型转换成LPCTSTR类型后,还需使用ATL的转换宏W2A将LPCTSTR类型装换成const char*类型。注意转换前加上USES_CONVERSION以避免出现编译错误。例如:
CString cstr;
USES_CONVERSION;
const char* ch = W2A(cstr.GetBuffer(sizeof(cstr)));