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

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

Linda Hamilton
リリース: 2024-10-26 11:38:03
オリジナル
806 人が閲覧しました

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

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート