LPC 为C类型Long指针 TSTR 是一个可变的东西。 LPCTSTR 是一个宏,在不同的编译器不同的编译环境中,可能被解析为不同的内容。 可能为 const char * 也可能为 const wchar_t * ; char * 转换成LPCTSTR该怎么转啊? 这个问题,如果LPCTSTR = const char * 问题就不存在了,出现了,就表示 LPCTSTR = const wchar_t* 那么楼主的问题就成了: char * 如何转换成const wchar_t* 我们知道char * 强制转换成const wchar_t* ,会出现乱码,甚至越界等未知行为因为 char*用一个字节0结束,而wchar_t*用两个字节0结束。所以char * 是不能强制转换成wchar_t* 的。必须重新编码: char *a="test"; WideString b = a ; LPCTSTR p = b.c_bstr(); 重新编码后,注意一下生命期被改变。
[quote=引用 2 楼 chinayu2007 的回复:] LPCTSTR lpszToPath; char * a="hello"; lpszToPath =(LPCTSTR)a ;
LPCTSTR lpszToPath; char * a="hello"; lpszToPath =(LPCTSTR)a ;
13,825
社区成员
102,679
社区内容
加载中
试试用AI创作助手写篇文章吧