dwww Home | Manual pages | Find package

mbsrtowcs(3)               Library Functions Manual               mbsrtowcs(3)

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

BIBLIOTHÈQUE
       Bibliothèque C standard (libc, -lc)

SYNOPSIS
       #include <wchar.h>

       size_t mbsrtowcs(wchar_t dest[restrict .len], const char **restrict src,
                        size_t len, mbstate_t *restrict ps);

DESCRIPTION
       Si dest n'est pas un pointeur NULL, la fonction  mbsrtowcs()  convertit
       la séquence multioctet *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éa-
       lisé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émen-
       tant chaque fois dest de un et en augmentant *src  du  nombre  d'octets
       lus. La conversion peut s'arrêter pour trois raisons :

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

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

       •  La  séquence  multioctet  a été complètement convertie, y compris le
          caractère nul ('\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 caractère large nul  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  sta-
       tique, 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É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  multioctet  incorrecte  est  rencontrée,  la  fonction  renvoie
       (size_t) -1, et errno contient EILSEQ.

ATTRIBUTS
       Pour  une explication des termes utilisés dans cette section, consulter
       attributes(7).

       ┌────────────┬──────────────────────┬──────────────────────────────────┐
       │InterfaceAttributValeur                           │
       ├────────────┼──────────────────────┼──────────────────────────────────┤
       │mbsrtowcs() │ Sécurité des threads │ MT-Unsafe race:mbsrtowcs/!ps     │
       └────────────┴──────────────────────┴──────────────────────────────────┘

STANDARDS
       POSIX.1-2001, POSIX.1-2008, C99.

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

       Passer NULL dans ps n'est pas sûr dans un contexte multithread.

VOIR AUSSI
       iconv(3), mbrtowc(3), mbsinit(3), mbsnrtowcs(3), mbstowcs(3)

TRADUCTION
       La  traduction française de cette page de manuel a été créée par Chris-
       tophe Blaess <https://www.blaess.fr/christophe/>, Stéphan  Rafin  <ste-
       phan.rafin@laposte.net>, Thierry Vignaud <tvignaud@mandriva.com>, Fran-
       çois Micaux, Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe  Gué-
       rard  <fevrier@tigreraye.org>,  Jean-Luc  Coulon (f5ibh) <jean-luc.cou-
       lon@wanadoo.fr>, Julien Cristau <jcristau@debian.org>,  Thomas  Huriaux
       <thomas.huriaux@gmail.com>,  Nicolas François <nicolas.francois@centra-
       liens.net>, Florentin Duneau <fduneau@gmail.com>, Simon  Paillard  <si-
       mon.paillard@resel.enst-bretagne.fr>,    Denis   Barbier   <barbier@de-
       bian.org>, David  Prévot  <david@tilapin.org>,  Jean-Baptiste  Holcroft
       <jean-baptiste@holcroft.fr>   et  Grégoire  Scano  <gregoire.scano@mal-
       loc.fr>

       Cette traduction est une documentation libre ; veuillez vous reporter à
       la        GNU        General       Public       License       version 3
       ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ concernant  les  conditions
       de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

       Si  vous découvrez un bogue dans la traduction de cette page de manuel,
       veuillez envoyer un message à ⟨debian-l10n-french@lists.debian.org⟩.

Pages du manuel de Linux 6.03   5 février 2023                    mbsrtowcs(3)

Generated by dwww version 1.15 on Sat Jun 29 01:53:04 CEST 2024.