table of contents
- bookworm-backports 4.25.1-1~bpo12+1
- testing 4.25.1-1
- unstable 4.25.1-1
wcrtomb(3) | Library Functions Manual | wcrtomb(3) |
BEZEICHNUNG¶
wcrtomb - Ein weites Zeichen in eine Multibyte-Sequenz umwandeln
BIBLIOTHEK¶
Standard-C-Bibliothek (libc, -lc)
ÜBERSICHT¶
#include <wchar.h>
size_t wcrtomb(char *restrict z, wchar_t wz, mbstate_t *restrict ps);
BESCHREIBUNG¶
Der Haupteinsatzfall für diese Funktion liegt vor, wenn z nicht NULL ist und wz kein weites Null-Zeichen ist (L'\0'). In diesem Fall wandelt die Funktion wcrtomb() das weite Zeichen wz in seine Multibyte-Darstellung um und speichert sie am Anfang des Zeichenfeldes, auf das z zeigt. Es aktualisiert den Schiebezustand *ps und liefert die Länge der besagten Multibyte-Darstellung zurück, das bedeutet, die an z geschriebene Anzahl an Bytes.
Ein anderer Fall liegt vor, wenn z nicht NULL ist aber wz ein weites Null-Zeichen ist (L'\0'). In diesem Fall speichert die Funktion wcrtomb() die Schiebesequenz, die benötigt wird, um *ps in seinen anfänglichen Zustand im Zeichenfeld zurückzubringen, auf das z zeigt, gefolgt von einem »\0«-Byte. Es aktualisiert den Schiebezustand (d.h. bringt ihn in den anfänglichen Zustand) und liefert die Länge der Schiebesequenz plus eins zurück, das bedeutet, die an z geschriebene Anzahl an Bytes.
Ein dritter Fall ist, wenn z NULL ist. In diesem Fall wird wz ignoriert und die Funktion liefert letztendlich
wcrtomb(buf, L'\0', ps)
zurück, wobei buf ein interner anonymer Puffer ist.
Falls ps NULL ist wird stattdessen in allen obigen Fällen ein statischer, anonymer Zustand, der nur der Funktion wcrtomb() bekannt ist, verwandt.
RÜCKGABEWERT¶
Die Funktion wcrtomb() liefert die Anzahl der Byte zurück, die in das Byte-Feld unter z geschrieben worden oder worden wären. Falls wz nicht als Multibyte-Sequenz dargestellt werden kann (entsprechend der aktuellen Locale), dann wird (size_t) -1 zurückgeliefert und errno auf EILSEQ gesetzt.
ATTRIBUTE¶
Siehe attributes(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke.
Schnittstelle | Attribut | Wert |
wcrtomb() | Multithread-Fähigkeit | MT-Unsicher race:wcrtomb/!ps |
STANDARDS¶
POSIX.1-2001, POSIX.1-2008, C99.
ANMERKUNGEN¶
Das Verhalten von wcrtomb() hängt von der Kategorie LC_CTYPE der aktuellen Locale ab.
Die Übergabe von NULL als ps ist nicht Multithread-sicher.
SIEHE AUCH¶
ÜBERSETZUNG¶
Die deutsche Übersetzung dieser Handbuchseite wurde von Helge Kreutzmann <debian@helgefjell.de> erstellt.
Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Übersetzer.
5. Februar 2023 | Linux man-pages 6.03 |