NOM
mbrlen - Calculer la longueur d’un caractère multi-octets
SYNOPSIS
#include <wchar.h>
size_t mbrlen(const char *s, size_t n, mbstate_t *ps);
La fonction mbrlen() examine au maximum n octets de la séquence
commençant en s et en extrait le caractère multi-octets complet
suivant. Elle met à jour l’état de décalage *ps. Si le caractère
multi-octets ne correspond pas au caractère large nul, elle renvoie le
nombre d’octets qui ont été lus dans s. Si ce caractère correspond au
caractère large nul, elle réinitialise l’état *ps et renvoie 0.
Si les n octets commençant en s ne contiennent pas un caractère
multi-octets complet, mbrlen() renvoie (size_t) -2. Ceci peut se
produire même si n >= MB_CUR_MAX, dans le cas où la séquence
multi-octets contient des séquences de décalage redondantes.
Si la séquence multi-octets commençant en s contient une séquence
invalide avant le prochain caractère complet, mbrlen() renvoie
(size_t) -1 et place dans errno la valeur EILSEQ. Dans ce cas, les
effets sur *ps sont indéfinis.
Si ps est un pointeur NULL, une zone de mémoire statique réservée à
mbrlen() est utilisée à sa place.
VALEUR RENVOYÉE
La fonction mbrlen() renvoie le nombre d’octets balayés depuis la
séquence commençant en s, si un caractère large non nul a été reconnu.
Elle renvoie zéro si un caractère large nul est rencontré. Elle renvoie
(size_t) -1 et remplit errno avec EILSEQ, si une séquence invalide est
trouvée. Elle renvoie (size_t) -2 si elle n’a pas trouvé de caractère
entier, et si n doit être augmenté.
CONFORMITÉ
C99.
NOTES
Le comportement de mbrlen() dépend de la catégorie LC_CTYPE de la
localisation en cours.
VOIR AUSSI
mbrtowc(3)
COLOPHON
Cette page fait partie de la publication 3.23 du projet man-pages
Linux. Une description du projet et des instructions pour signaler des
anomalies peuvent être trouvées à l’adresse
http://www.kernel.org/doc/man-pages/.
TRADUCTION
Cette page de manuel a été traduite et mise à jour par Christophe
Blaess <http://www.blaess.fr/christophe/> entre 1996 et 2003, puis par
Alain Portal <aportal AT univ-montp2 DOT fr> jusqu’en 2006, et mise à
disposition sur http://manpagesfr.free.fr/.
Les mises à jour et corrections de la version présente dans Debian sont
directement gérées par Florentin Duneau <fduneau@gmail.com> et l’équipe
francophone de traduction de Debian.
Veuillez signaler toute erreur de traduction en écrivant à
<debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le
paquet manpages-fr.
Vous pouvez toujours avoir accès à la version anglaise de ce document
en utilisant la commande « man -L C <section> <page_de_man> ».