首页 > 后端开发 > C++ > 如何在 Unicode MFC 应用程序中将 CString 转换为 const char*?

如何在 Unicode MFC 应用程序中将 CString 转换为 const char*?

Patricia Arquette
发布: 2024-10-27 19:30:30
原创
593 人浏览过

How to Convert a CString to a const char* in Unicode MFC Applications?

在 Unicode MFC 应用程序中将 CString 转换为 Const char*

问题:

如何我将 CString(特别是当它包含 TCHAR 字符时)转换为 Unicode MFC 应用程序中的 const char* 表示形式?

解决方案:

要有效地转换 TCHAR CString对于 ASCII,您应该使用 CT2A 宏。该宏不仅允许 ASCII 转换,还允许转换为 UTF8 或其他 Windows 代码页。下面是一些示例来演示其用法:

<code class="cpp">// Convert using the local code page
CString str(_T("Hello, world!"));
CT2A ascii(str);
TRACE(_T("ASCII: %S\n"), ascii.m_psz);

// Convert to UTF8
CString str(_T("Some Unicode goodness"));
CT2A ascii(str, CP_UTF8);
TRACE(_T("UTF8: %S\n"), ascii.m_psz);

// Convert to Thai code page
CString str(_T("Some Thai text"));
CT2A ascii(str, 874);
TRACE(_T("Thai: %S\n"), ascii.m_psz);</code>
登录后复制

此外,还有一个用于从 ASCII 转换为 Unicode (CA2T) 的宏。如果您有 VS2003 或更高版本,则可以在 ATL/WTL 应用程序中使用这些宏。更详细的信息可以在 MSDN 文档中找到。

以上是如何在 Unicode MFC 应用程序中将 CString 转换为 const char*?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板