Provided by: manpages-de-dev_4.27.0-1_all bug

BEZEICHNUNG

       wcsrtombs - eine Zeichenkette weiter Zeichen in eine Multibyte-Zeichenkette umwandeln

BIBLIOTHEK

       Standard-C-Bibliothek (libc, -lc)

ÜBERSICHT

       #include <wchar.h>

       size_t wcsrtombs(char Ziel[restrict .Länge], const wchar_t **restrict Quelle,
                        size_t Länge, 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 höchstens Länge byte nach Ziel  geschrieben.
       Der Schiebe-Zustand *ps wird aktualisiert. Die Umwandlung wird letztendlich durch wiederholten Aufruf von
       wcrtomb(Ziel,  *Quelle, ps) durchgeführt, solange dieser Aufruf erfolgreich ist und dann wird Ziel um die
       Anzahl der geschriebenen Byte und *Quelle um eins erhöht. Die Umwandlung kann aus  drei  Gründen  beendet
       werden:

       •  Es  wurde ein weites Zeichen angetroffen, das (gemäß der aktuellen Locale) nicht als Multibyte-Sequenz
          dargestellt werden kann.  In  diesem  Fall  verbleibt  *Quelle  auf  das  ungültige  Zeichen  zeigend,
          (size_t) -1 wird zurückgeliefert und errno wird auf EILSEQ gesetzt.

       •  Die  Längenbegrenzung  erzwingt  einen  Stopp.  In  diesem  Fall  verbleibt  *Quelle  auf  das nächste
          umzuwandelnde Zeichen zeigend und die Anzahl nach Ziel geschriebenen Bytes wird zurückgeliefert.

       •  Die Zeichenkette weiter Zeichen wurde komplett umgewandelt, einschließlich des  abschließenden  weiten
          Nullzeichens  (L'\0').  Dies  hat  den  Seiteneffekt,  dass  es  *ps  wieder  auf  den  Anfangszustand
          zurückbringt. In diesem Fall wird *Quelle auf NULL gesetzt und die Anzahl der nach Ziel  geschriebenen
          Bytes, auschließlich des abschließenden weiten Nullzeichens (L'\0') wird zurückgeliefert.

       Falls Ziel NULL ist, wird Länge ignoriert und die Umwandlung wird wie oben beschrieben fortgeführt, außer
       dass  die  umgewandelten  Bytes nicht in den Speicher ausgegeben werden und dass keine Längenbeschränkung
       existiert.

       In beiden obigen Fällen, falls ps NULL ist, wird stattdessen ein anonymer, nur der  Funktion  wcsrtombs()
       bekannter Zustand verwandt.

       Der Programmierer muss sicherstellen, dass es Raum für mindestens Länge Byte bei Ziel gibt.

RÜCKGABEWERT

       Die  Funktion  wcsrtombs()  liefert  die  Anzahl  der  Byte zurück, aus denen der konvertierte Anteil der
       Multibyte-Sequenz besteht, ohne das abschließende Nullbyte. Falls ein weites Zeichen  angetroffen  wurde,
       das nicht konvertiert werden konnte, 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.
       ┌───────────────┬───────────────────────┬───────────────────────────────────────────────────────────────┐
       │ SchnittstelleAttributWert                                                          │
       ├───────────────┼───────────────────────┼───────────────────────────────────────────────────────────────┤
       │ wcsrtombs()   │ Multithread-Fähigkeit │ MT-Unsicher race:wcsrtombs/!ps                                │
       └───────────────┴───────────────────────┴───────────────────────────────────────────────────────────────┘

STANDARDS

       C11, POSIX.1-2008.

GESCHICHTE

       POSIX.1-2001, C99.

ANMERKUNGEN

       Das Verhalten von wcsrtombs() hängt von der Kategorie LC_CTYPE der aktuellen Locale ab.

       Die Übergabe von NULL als ps ist nicht Multithread-sicher.

SIEHE AUCH

       iconv(3), mbsinit(3), wcrtomb(3), wcsnrtombs(3), wcstombs(3)

Ü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: debian-l10n-german@lists.debian.org.

Linux man-pages 6.9.1                             15. Juni 2024                                     wcsrtombs(3)