Bagaimana untuk Mencetak Nilai wchar_t ke Konsol dengan Betul?

Susan Sarandon
Lepaskan: 2024-11-20 02:35:02
asal
374 orang telah melayarinya

How to Print wchar_t Values to the Console Correctly?

Mencetak Nilai wchar_t ke Konsol

Apabila bekerja dengan nilai wchar_t, yang mewakili aksara lebar yang merangkumi berbilang bait, mencetaknya terus ke konsol menggunakan std::cout boleh menyebabkan nilai perenambelasan dipaparkan dan bukannya aksara yang dimaksudkan. Untuk mencetak rentetan wchar_t dengan betul, terdapat dua pendekatan yang disyorkan.

1. Gunakan std::wcout:

Strim std::wcout secara eksplisit mengendalikan aksara lebar, membenarkan pencetakan nilai wchar_t yang betul. Untuk menggunakan pendekatan ini, gantikan std::cout dengan std::wcout dalam kod anda:

wcout << ru << endl << en;
Salin selepas log masuk

Ini akan mencetak rentetan "Привет" dan "Hello" dalam bahasa masing-masing.

2. Hantar secara eksplisit ke char:

Jika anda perlu menggunakan std::cout, anda boleh secara eksplisit menghantar nilai wchar_t ke char sebelum menulisnya ke konsol. Pendekatan ini kurang diutamakan tetapi boleh berguna jika std::wcout tidak tersedia:

cout << (char*)ru << endl << (char*)en;
Salin selepas log masuk

Walau bagaimanapun, ambil perhatian bahawa kaedah ini mungkin tidak berfungsi dengan betul untuk aksara yang tidak boleh diwakili menggunakan pengekodan aksara lalai sistem anda .

Atas ialah kandungan terperinci Bagaimana untuk Mencetak Nilai wchar_t ke Konsol dengan Betul?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan