wcstombs(3) | Library Functions Manual | wcstombs(3) |
BEZEICHNUNG¶
wcstombs - Eine Zeichenkette weiter Zeichen in eine Multibyte-Zeichenkette konvertieren
BIBLIOTHEK¶
Standard-C-Bibliothek (libc, -lc)
ÜBERSICHT¶
#include <stdlib.h>
size_t wcstombs(char Ziel[restrict .n], const wchar_t *restrict Quelle, size_t n);
BESCHREIBUNG¶
Falls Ziel nicht NULL ist, konvertiert die Funktion wcstombs() die Zeichenkette weiter Zeichen Quelle in eine bei Ziel beginnende Multibyte-Zeichenkette. Es werden nach Ziel höchstens n byte geschrieben. Die in Ziel abgelegte Zeichensequenz beginnt im anfänglichen Schiebe-Zustand. Die Konvertierung kann aus drei Gründen stoppen:
- •
- Es wurde auf ein weites Zeichen gestossen, das nicht als Multibyte-Sequenz dargestellt werden kann (gemäß der aktuellen Locale). In diesem Fall wird (size_t) -1 zurückgeliefert.
- •
- Die Längenbegrenzung erzwingt einen Stopp. In diesem Fall wird die Anzahl der nach Ziel geschriebenen Bytes zurückgeliefert, aber der Schiebe-Zustand geht an diesem Punkt verloren.
- •
- Die Zeichenkette weiter Zeichen wurde vollständig umgewandelt, einschließlich des abschließenden weiten Nullzeichens (L'\0'). In diesem Fall endet die Umwandlung im anfänglichen Schiebe-Zustand. Es wird die Anzahl der nach Ziel geschriebenen Bytes ohne das abschließende Nullbyte (»\0«) zurückgeliefert.
Der Programmierer muss sicherstellen, dass bei Ziel Platz für mindestens n byte ist.
Falls Ziel NULL ist, wird n ignoriert und die Umwandlung fährt wie oben fort, außer dass die umgewandelten Bytes nicht in den Speicher geschrieben werden und keine Längenbeschränkung existiert.
Um den obigen zweiten Fall zu vermeiden, sollte der Programmierer sicherstellen, dass n größer oder gleich wcstombs(NULL,Quelle,0)+1 ist.
RÜCKGABEWERT¶
Die Funktion wcstombs() liefert die Anzahl der Bytes zurück, die den umgewandelten Teil der Multibyte-Sequenz darstellen, ohne das abschließende Nullbyte. Falls ein weites Zeichen angetroffen wurde, das nicht umgewandelt werden konnte, wird (size_t) -1 zurückgeliefert.
ATTRIBUTE¶
Siehe attributes(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke.
Schnittstelle | Attribut | Wert |
wcstombs() | Multithread-Fähigkeit | MT-Sicher |
VERSIONEN¶
Die Funktion wcsrtombs(3) stellt eine bessere Schnittstelle für die gleiche Funktionalität bereit.
STANDARDS¶
C11, POSIX.1-2008.
GESCHICHTE¶
POSIX.1-2001, C99.
ANMERKUNGEN¶
Das Verhalten von wcstombs() hängt von der Kategorie LC_CTYPE der aktuellen Locale ab.
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.
2. Mai 2024 | Linux man-pages (unveröffentlicht) |