• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Jak wypisać char16_t na konsoli? [C++]

Aruba Cloud VPS - 50% taniej przez 3 miesiące!
+1 głos
845 wizyt
pytanie zadane 29 października 2017 w C i C++ przez uczen_tech123 Początkujący (420 p.)
Potrzebuje odpowiedzi na pytanie zawarte w temacie.
komentarz 29 października 2017 przez draghan VIP (106,230 p.)
Możesz trochę sprecyzować co masz na myśli? To ma być wypisana liczba czy znak?

1 odpowiedź

+1 głos
odpowiedź 29 października 2017 przez j23 Mędrzec (195,260 p.)
wybrane 8 grudnia 2017 przez uczen_tech123
 
Najlepsza

Jeśli chodzi Ci o wyświetlanie literałów tekstowych/znakowych, to np. tak możesz zrobić:

using conv = std::wstring_convert<std::codecvt_utf8<char16_t>, char16_t>;


char16_t b = u'ę';
const char16_t *s = u"śćżźół\n";

    
std::cout << conv().to_bytes(b) << '\n';
std::cout << conv().to_bytes(s) << '\n';

 

To zadziała pod warunkiem, że uda Ci się zmusić cout do wyświetlania tekstu w kodowaniu utf-8 (w linuxie to nie problem).

[dodane]

Wersja, która powinna śmignąć w windowsie:

const char16_t*	s = u"śćżźół";
	
setlocale(LC_CTYPE, ".852"); // w MinGW tak musi być
//std::wcout.imbue(std::locale(".852")); // a tak w C++

using conv1 = std::wstring_convert<std::codecvt_utf8<char16_t>, char16_t>;
using conv2 = std::wstring_convert<std::codecvt_utf8<wchar_t, 0x10ffff, std::little_endian>, wchar_t>;

std::wstring ws = conv2().from_bytes(conv1().to_bytes(s));
	
std::wcout << ws << L'\n';



Podobne pytania

0 głosów
1 odpowiedź 478 wizyt
pytanie zadane 15 maja 2020 w C i C++ przez Czarus Obywatel (1,310 p.)
–2 głosów
2 odpowiedzi 576 wizyt
pytanie zadane 20 sierpnia 2020 w C i C++ przez Drożdżówka Obywatel (1,870 p.)
0 głosów
0 odpowiedzi 496 wizyt

93,187 zapytań

142,203 odpowiedzi

322,024 komentarzy

62,515 pasjonatów

Advent of Code 2024

Top 15 użytkowników

  1. 2581p. - dia-Chann
  2. 2537p. - Łukasz Piwowar
  3. 2528p. - Łukasz Eckert
  4. 2514p. - CC PL
  5. 2476p. - Tomasz Bielak
  6. 2445p. - Łukasz Siedlecki
  7. 2443p. - rucin93
  8. 2310p. - Michal Drewniak
  9. 2156p. - Marcin Putra
  10. 2152p. - Adrian Wieprzkowicz
  11. 2105p. - Mikbac
  12. 2048p. - Anonim 3619784
  13. 1733p. - rafalszastok
  14. 1701p. - Michał Telesz
  15. 1580p. - ssynowiec
Szczegóły i pełne wyniki

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...