Unicode MFC アプリケーションで CString を const char* に変換する
CString を Unicode (TCHAR) から ASCII (const char*) に変換します。 Unicode MFC アプリケーションでレガシー コードまたは外部ライブラリと対話するために不可欠です。これを実現する方法は次のとおりです。
CT2A マクロの使用
CT2A マクロは、Unicode CString を ASCII に変換する便利な方法を提供します。 CString を引数として受け取り、オプションでコード ページを指定する 2 番目の引数を受け取ります。デフォルトでは、ローカル コード ページを使用します。
<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);</code>
その他の使用例
CT2A マクロを使用して、Unicode CString を UTF8 などに変換することもできます。その他の Windows コード ページ:
<code class="cpp">// 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>
CA2T マクロと互換性
ASCII から Unicode に変換する補完的な CA2T マクロもあります。 CT2A マクロと CA2T マクロはどちらも、Visual Studio 2003 以降の ATL/WTL アプリケーションで使用できます。
追加リソース
これらのマクロの詳細については、およびコード ページの変換については、Microsoft Developer Network (MSDN) を参照してください。
以上がUnicode MFC アプリケーションで CString を `const char*` に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。