mbrlen(3)

BEZEICHNUNG
mbrlen - Die Anzahl der Bytes im nächsten Multibytezeichen ermitteln

BIBLIOTHEK
Standard-C-Bibliothek (libc, -lc)

ÜBERSICHT
#include <wchar.h>

size_t mbrlen(size_t n;
              const char s[restrict n], size_t n,
              mbstate_t *restrict ps);

BESCHREIBUNG
Die Funktion mbrlen() untersucht höchstens n byte der bei z beginnenden Multibytezeichenkette und löst das nächste vollständige Multibytezeichen aus. Es aktualisiert den Schiebe-Zustand *ps. Falls das Multibytezeichen nicht das weite Nullzeichen ist, liefert es die Anzahl der Bytes zurück, die aus z verbraucht wurden. Falls das Multibytezeichen das weite Nullzeichen ist, setzt es den Schiebe-Zustand *ps auf den anfänglichen Zustand zurück und liefert 0 zurück.

Falls die n bei z beginnenden Bytes kein vollständiges Mulitbytezeichen enthalten, liefert mbrlen() (size_t) -2 zurück. Dies kann passieren, selbst wenn n >= MB_CUR_MAX, falls die Multibytezeichenkette redundante Schiebesequenzen enthält.

Falls die bei z beginnende Multibytezeichenkette eine ungültige Multibytesequenz vor dem nächsten vollständigen Zeichen enthält, liefert mbrlen() (size_t) -1 zurück und setzt errno auf EILSEQ. In diesem Fall sind die Auswirkungen auf *ps nicht definiert.

Falls ps NULL ist, wird stattdessen eine anonyme statische, nur mbrlen() bekannte Funktion verwandt.

RÜCKGABEWERT
Die Funktion mbrlen() liefert die Anzahl der aus der bei z beginnenden Multibyte-Sequenz ausgewerteten Bytes zurück, falls ein von Null verschiedenes weites Zeichen erkannt wurde. Sie liefert 0 zurück, falls ein weites Nullzeichen erkannt wurde. Sie liefert (size_t) -1 zurück und setzt errno auf EILSEQ, falls eine ungültige Multibyte-Sequenz angetroffen wurde. Sie liefert (size_t) -2 zurück, falls sie kein vollständiges Multibytezeichen auswerten konnte, was bedeutet, dass n erhöht werden sollte.

ATTRIBUTE
Siehe attributes(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke.
Schnittstelle | Attribut | Wert
mbrlen() | Multithread-Fähigkeit | MT-Unsicher race:mbrlen/!ps

STANDARDS
C11, POSIX.1-2008.

GESCHICHTE
POSIX.1-2001, C99.

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

SIEHE AUCH
mbrtowc(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 (https://www.gnu.org/licenses/gpl-3.0.html) 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).