dwww Home | Manual pages | Find package

mbsinit(3)                 Library Functions Manual                 mbsinit(3)

NOM
       mbsinit - Vérifier si la conversion est dans l'état initial

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

SYNOPSIS
       #include <wchar.h>

       int mbsinit(const mbstate_t *ps);

DESCRIPTION
       La  conversion  de caractères entre la représentation multioctet et les
       caractères larges emploie un état  de  type  mbstate_t.  La  conversion
       d'une  chaîne utilise un automate à états finis. Lorsqu'elle est inter-
       rompue après la conversion d'un nombre entier de  caractères,  il  peut
       être  nécessaire de mémoriser son état pour pouvoir traiter ultérieure-
       ment le reste de la chaîne. Un tel état de conversion est indispensable
       pour certains encodages tels que ISO-2022 et UTF-7.

       L'état initial est celui du début de la conversion d'une chaîne. Il y a
       deux types d'états, celui utilisé par les  conversions  multioctets  en
       caractères  larges,  comme  pour mbsrtowcs(3), et celui employé par les
       conversions inverses, comme  pour  wcsrtombs(3).  Toutefois,  les  deux
       types  peuvent être stockés dans une variable mbstate_t et ils ont tous
       deux la même représentation de l'état initial.

       Pour les codages 8 bits, tous les états sont équivalents à l'état  ini-
       tial.  Pour  les encodages multioctets comme UTF-8, EUC-* BIG5 ou SJIS,
       les fonctions de conversion de caractères larges en multioctets ne pro-
       duisent  jamais  d'état  non  initial, mais les fonctions de conversion
       multioctets en caractères larges comme mbrtowc(3)  produisent  un  état
       non initial si elles sont interrompues au milieu d'un caractère.

       Une  possibilité pour créer un état mbstate_t initial est de le définir
       à zéro :

           mbstate_t state;
           memset(&state, 0, sizeof(state));

       Sous Linux, on peut aussi utiliser la ligne suivante, même si elle  dé-
       clenche des avertissements du compilateur :

           mbstate_t state = { 0 };

       La fonction mbsinit() vérifie si *ps correspond à un état initial.

VALEUR RENVOYÉE
       La  fonction  mbsinit()  renvoie  une  valeur non nulle si *ps est dans
       l'état initial, ou si ps est un  pointeur  NULL.  Sinon,  elle  renvoie
       zéro.

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

       ┌─────────────────────────────────────┬──────────────────────┬─────────┐
       │InterfaceAttributValeur  │
       ├─────────────────────────────────────┼──────────────────────┼─────────┤
       │mbsinit()                            │ Sécurité des threads │ MT-Safe │
       └─────────────────────────────────────┴──────────────────────┴─────────┘

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

NOTES
       Le comportement de mbsinit() dépend de la catégorie LC_CTYPE de la  lo-
       calisation en cours.

VOIR AUSSI
       mbrlen(3), mbrtowc(3), mbsrtowcs(3), wcrtomb(3), wcsrtombs(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  15 décembre 2022                     mbsinit(3)

Generated by dwww version 1.15 on Sat Jun 29 01:44:40 CEST 2024.