ホームページ  >  記事  >  バックエンド開発  >  Unicode MFC アプリケーションで CString を `const char*` に変換するにはどうすればよいですか?

Unicode MFC アプリケーションで CString を `const char*` に変換するにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-10-26 11:38:03723ブラウズ

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

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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。