Loading

NOM

       mbsrtowcs - Convertir une séquence multi-octets en chaîne de caractères
       larges

SYNOPSIS

       #include <wchar.h>

       size_t mbsrtowcs(wchar_t *dest, const char **src,
                         size_t len, mbstate_t *ps);

       Si dest n’est pas un pointeur NULL, la fonction  mbsrtowcs()  convertit
       la  séquence  multi-octets  *src  en  une  chaîne  de caractères larges
       débutant en dest. Au maximum, len caractères larges  sont  écrits  dans
       dest.  L’état  de  conversion  *ps est mis à jour. La conversion est en
       fait réalisée en invoquant de façon répétée mbrtowc(dest, *src, n,  ps)n  est un nombre positif, aussi longtemps que cet appel réussit, en
       incrémentant chaque fois dest de un et en  augmentant  *src  du  nombre
       d’octets lus. La conversion peut s’arrêter pour trois raisons :

       1. Une  séquence  multi-octets  invalide a été rencontrée. Dans ce cas,
          *src pointera sur la  séquence  invalide,  et  la  fonction  renvoie
          (size_t) -1 en positionnant errno à la valeur EILSEQ.

       2. len  caractères  larges  différents  de L'\0' ont été enregistrés en
          dest.  Dans  ce  cas,  *src  pointe  sur  la  séquence  multi-octets
          suivante,  et  le  nombre de caractères larges écrites dans dest est
          renvoyé.

       3. La séquence multi-octets a été complètement convertie, y compris  le
          '\0'  final  (ce  qui  a  pour effet de bord de ramener *ps à l’état
          initial). Dans ce cas,  *src  est  mis  à  NULL,  et  le  nombre  de
          caractères écrits dans dest, moins le L'\0' final, est renvoyé.

       Si  dest  est  NULL,  alors len est ignoré, et la conversion se déroule
       comme précédemment, sauf que  les  caractères  convertis  ne  sont  pas
       écrits  en  mémoire,  et qu’aucune limite de destination n’est prise en
       compte.

       Dans tous les cas,  si  ps  est  un  pointeur  NULL,  un  état  anonyme
       statique, réservé à la fonction mbsrtowcs() est utilisé à sa place.

       Le  programmeur doit s’assurer qu’il y assez de place pour au moins len
       caractères larges dans dest.

VALEUR RENVOYÉE

       La fonction mbsrtowcs() renvoie le nombre de caractères  larges  placés
       dans  la  zone  convertie,  sans compter le caractère nul final. Si une
       séquence multi-octets invalide  est  rencontrée,  la  fonction  renvoie
       (size_t) -1, et errno contient EILSEQ.

CONFORMITÉ

       C99.

NOTES

       Le  comportement  de  mbsrtowcs() dépend de la catégorie LC_CTYPE de la
       localisation en cours.

       L’utilisation d’un pointeur  NULL  pour  ps  n’est  pas  sûre  dans  un
       contexte multi-threads.

VOIR AUSSI

       iconv(3), mbsnrtowcs(3), mbstowcs(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> ».