Namensräume
Varianten
Aktionen

std::mbstate_t

Von cppreference.com
< cpp‎ | string‎ | multibyte
 
 
 
 
Definiert in Header <cuchar>
(seit C++17)
Definiert in Header <cwchar>
struct mbstate_t;

Der Typ mbstate_t ist ein trivialer Nicht-Array-Typ, der alle Konvertierungszustände darstellen kann, die in einem implementierungsdefinierten Satz unterstützter Multibyte-Zeichenkodierungsregeln auftreten können. Ein null-initialisierter Wert von mbstate_t stellt den anfänglichen Konvertierungszustand dar, obwohl auch andere Werte von mbstate_t existieren können, die ebenfalls den anfänglichen Konvertierungszustand darstellen.

Eine mögliche Implementierung von mbstate_t ist ein Strukturtyp, der ein Array für das unvollständige Multibyte-Zeichen, einen ganzzahligen Zähler für die Anzahl der im Array verarbeiteten Bytes und eine Darstellung des aktuellen Shift-Zustands enthält.

Die folgenden Funktionen dürfen nicht von mehreren Threads ohne Synchronisation mit dem Argument std::mbstate_t* als Nullzeiger aufgerufen werden, da dies zu Datenwettläufen führen kann: std::mbrlen, std::mbrtowc, std::mbsrtowcs, std::mbtowc, std::wcrtomb, std::wcsrtombs, std::wctomb.

[edit] Siehe auch

prüft, ob das std::mbstate_t-Objekt den anfänglichen Shift-Zustand darstellt
(Funktion) [bearbeiten]
C-Dokumentation für mbstate_t