Menukar std::string kepada LPCWSTR dalam C (Penukaran Unikod)
Dalam C , bekerja dengan rentetan Unicode memerlukan penggunaan LPCWSTR. Jenis data ini ialah rentetan aksara lebar yang sering ditemui dalam pengaturcaraan berasaskan Windows. Walau bagaimanapun, adalah perkara biasa untuk menangani std::string, yang merupakan jenis data yang lebih serba boleh untuk manipulasi rentetan.
Penyelesaian:
Menukar std::string kepada LPCWSTR adalah proses yang mudah. Coretan kod berikut menyediakan penyelesaian:
std::wstring stemp = std::wstring(s.begin(), s.end()); LPCWSTR sw = stemp.c_str();
Pendekatan ini menukarkan std::string s dengan cekap kepada stem rentetan aksara lebar, dan kemudian mendapatkan semula perwakilan LPCWSTR menggunakan fungsi c_str().
Kelebihan:
Penyelesaian ini menawarkan beberapa kelebihan:
Tambahan Nota:
Objek std::wstring harus diperuntukkan secara eksplisit untuk mengelakkan penunjuk berjuntai. Adalah disyorkan untuk menggunakan std::make_unique
Atas ialah kandungan terperinci Bagaimana untuk Menukar std::string ke LPCWSTR dalam C ?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!