Provided by: manpages-fr_1.67.0-1_all bug

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);

DESCRIPTION

       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  seront  écrits  dans  dest.
       L’état  de  conversion  *ps  est  mis à jour. La conversion est en fait
       réalisée en invoquant à répétition mbrtowc(dest,*src,n,ps) où n est  un
       nombre  positif, aussi longtemps que cet appel réussit, en incrémentant
       chaque fois dest 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
       L’\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, sauf 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 mbsnrtowcs 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ÉÉ

       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É

       ISO/ANSI C, UNIX98

VOIR AUSSI

       mbstowcs(3), mbsnrtowcs(3), iconv(3)

NOTES

       Le comportement de mbsrtowcs dépend de  la  catégorie  LC_CTYPE  de  la
       localisation.

       L’utilisation d’un pointeur NULL pour ps n’est pas sûr dans un contexte
       multithreads.

TRADUCTION

       Christophe Blaess, 2000-2003.