Tukar CString kepada const char* dalam Unicode MFC Applications
Menukar CString daripada Unicode (TCHAR) kepada ASCII (const char*) ialah penting untuk berinteraksi dengan kod warisan atau perpustakaan luaran dalam aplikasi Unicode MFC. Begini cara anda boleh mencapai ini:
Menggunakan Makro CT2A
Makro CT2A menyediakan cara yang mudah untuk menukar CString Unicode kepada ASCII. Ia memerlukan CString sebagai hujah dan hujah kedua pilihan untuk menentukan halaman kod. Secara lalai, ia menggunakan halaman kod setempat.
<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>
Kes Penggunaan Tambahan
Makro CT2A juga boleh digunakan untuk menukar Unicode CString kepada UTF8 atau mana-mana halaman kod Windows yang lain:
<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>
Makro dan Keserasian CA2T
Terdapat juga makro CA2T pelengkap yang menukar daripada ASCII kepada Unicode. Kedua-dua makro CT2A dan CA2T boleh digunakan dalam aplikasi ATL/WTL dengan Visual Studio 2003 atau lebih baru.
Sumber Tambahan
Untuk mendapatkan maklumat yang lebih mendalam tentang makro ini dan penukaran halaman kod, rujuk kepada Rangkaian Pembangun Microsoft (MSDN).
Atas ialah kandungan terperinci Bagaimana untuk Menukar CString kepada `const char*` dalam Aplikasi MFC Unicode?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!