유니코드 MFC 애플리케이션에서 CString을 Const char*로 변환
문제:
어떻게 할 수 있나요? 특히 TCHAR 문자가 포함된 CString을 유니코드 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에서 유니코드(CA2T)로 변환하기 위한 매크로도 있습니다. VS2003 이상이 있는 경우 ATL/WTL 애플리케이션에서 이러한 매크로를 활용할 수 있습니다. 자세한 내용은 MSDN 설명서에서 확인할 수 있습니다.
위 내용은 유니코드 MFC 응용 프로그램에서 CString을 const char*로 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!