wcsrtombs(3) Library Functions Manual wcsrtombs(3) BEZEICHNUNG wcsrtombs - eine Zeichenkette weiter Zeichen in eine Multibyte-Zeichenkette umwandeln BIBLIOTHEK Standard-C-Bibliothek (libc, -lc) UBERSICHT #include size_t wcsrtombs(size_t zGrosse; char Ziel[restrict zGrosse], const wchar_t **restrict Quelle, size_t zGrosse, mbstate_t *restrict ps); BESCHREIBUNG Falls Ziel nicht NULL ist, konvertiert die Funktion wcsrtombs() die Zeichenkette weiter Zeichen *Quelle in eine bei Ziel beginnende Multibytezeichenkette. Es werden hochstens zGrosse byte nach Ziel geschrieben. Der Schiebe-Zustand *ps wird aktualisiert. Die Umwandlung wird letztendlich durch wiederholten Aufruf von wcrtomb(Ziel, *Quelle, ps) durchgefuhrt, solange dieser Aufruf erfolgreich ist und dann wird Ziel um die Anzahl der geschriebenen Byte und *Quelle um eins erhoht. Die Umwandlung kann aus drei Grunden beendet werden: o Es wurde ein weites Zeichen angetroffen, das (gemass der aktuellen Locale) nicht als Multibyte-Sequenz dargestellt werden kann. In diesem Fall verbleibt *Quelle auf das ungultige Zeichen zeigend, (size_t) -1 wird zuruckgeliefert und errno wird auf EILSEQ gesetzt. o Die Grossenbegrenzung erzwingt einen Stopp. In diesem Fall verbleibt *Quelle auf das nachste umzuwandelnde Zeichen zeigend und die Anzahl nach Ziel geschriebenen Bytes wird zuruckgeliefert. o Die Zeichenkette weiter Zeichen wurde komplett umgewandelt, einschliesslich des abschliessenden weiten Nullzeichens (L'\0'). Dies hat den Seiteneffekt, dass es *ps wieder auf den Anfangszustand zuruckbringt. In diesem Fall wird *Quelle auf NULL gesetzt und die Anzahl der nach Ziel geschriebenen Bytes, auschliesslich des abschliessenden weiten Nullzeichens (L'\0') wird zuruckgeliefert. Falls Ziel NULL ist, wird zGrosse ignoriert und die Umwandlung wird wie oben beschrieben fortgefuhrt, ausser dass die umgewandelten Bytes nicht in den Speicher ausgegeben werden und dass keine Grossenbeschrankung existiert. In beiden obigen Fallen, falls ps NULL ist, wird stattdessen ein anonymer, nur der Funktion wcsrtombs() bekannter Zustand verwandt. Der Programmierer muss sicherstellen, dass es Raum fur mindestens zGrosse Byte bei Ziel gibt. RUCKGABEWERT Die Funktion wcsrtombs() liefert die Anzahl der Byte zuruck, aus denen der konvertierte Anteil der Multibyte-Sequenz besteht, ohne das abschliessende Nullbyte. Falls ein weites Zeichen angetroffen wurde, das nicht konvertiert werden konnte, wird (size_t) -1 zuruckgeliefert und errno auf EILSEQ gesetzt. ATTRIBUTE Siehe attributes(7) fur eine Erlauterung der in diesem Abschnitt verwandten Ausdrucke. +--------------+-------------------------+-----------------------------+ |Schnittstelle | Attribut | Wert | +--------------+-------------------------+-----------------------------+ |wcsrtombs() | Multithread-Fahigkeit | MT-Unsicher | | | | race:wcsrtombs/!ps | +--------------+-------------------------+-----------------------------+ STANDARDS C11, POSIX.1-2008. GESCHICHTE POSIX.1-2001, C99. ANMERKUNGEN Das Verhalten von wcsrtombs() hangt von der Kategorie LC_CTYPE der aktuellen Locale ab. Die Ubergabe von NULL als ps ist nicht Multithread-sicher. SIEHE AUCH iconv(3), mbsinit(3), wcrtomb(3), wcsnrtombs(3), wcstombs(3) UBERSETZUNG Die deutsche Ubersetzung dieser Handbuchseite wurde von Helge Kreutzmann erstellt. Diese Ubersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezuglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG ubernommen. Wenn Sie Fehler in der Ubersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Ubersetzer . Linux man-pages 6.18 8. Februar 2026 wcsrtombs(3)