mbsinit(3) Library Functions Manual mbsinit(3) NOM mbsinit - Verifier si la conversion est dans l'etat initial BIBLIOTHEQUE Bibliotheque C standard (libc, -lc) SYNOPSIS #include int mbsinit(const mbstate_t *ps); DESCRIPTION La conversion de caracteres entre la representation multioctet et les caracteres larges emploie un etat de type mbstate_t. La conversion d'une chaine utilise un automate a etats finis. Lorsqu'elle est interrompue apres la conversion d'un nombre entier de caracteres, il peut etre necessaire de memoriser son etat pour pouvoir traiter ulterieurement le reste de la chaine. Un tel etat de conversion est indispensable pour certains encodages tels que ISO/IEC 2022 et UTF-7. L'etat initial est celui du debut de la conversion d'une chaine. Il y a deux types d'etats, celui utilise par les conversions multioctets en caracteres larges, comme pour mbsrtowcs(3), et celui employe par les conversions inverses, comme pour wcsrtombs(3). Toutefois, les deux types peuvent etre stockes dans une variable mbstate_t et ils ont tous deux la meme representation de l'etat initial. Pour les codages 8 bits, tous les etats sont equivalents a l'etat initial. Pour les encodages multioctets comme UTF-8, EUC-* BIG5 ou SJIS, les fonctions de conversion de caracteres larges en multioctets ne produisent jamais d'etat non initial, mais les fonctions de conversion multioctets en caracteres larges comme mbrtowc(3) produisent un etat non initial si elles sont interrompues au milieu d'un caractere. Une possibilite pour creer un etat mbstate_t initial est de le definir a zero : mbstate_t state; memset(&state, 0, sizeof(state)); Sous Linux, on peut aussi utiliser la ligne suivante, meme si elle declenche des avertissements du compilateur : mbstate_t state = { 0 }; La fonction mbsinit() verifie si *ps correspond a un etat initial. VALEUR RENVOYEE La fonction mbsinit() renvoie une valeur non nulle si *ps est dans l'etat initial, ou si ps est un pointeur NULL. Sinon, elle renvoie zero. ATTRIBUTS Pour une explication des termes utilises dans cette section, consulter attributes(7). +---------------------------------+--------------------------+---------+ |Interface | Attribut | Valeur | +---------------------------------+--------------------------+---------+ |mbsinit() | Securite des threads | MT-Safe | +---------------------------------+--------------------------+---------+ STANDARDS C11, POSIX.1-2008. HISTORIQUE POSIX.1-2001, C99. NOTES Le comportement de mbsinit() depend de la categorie LC_CTYPE de la localisation en cours. VOIR AUSSI mbrlen(3), mbrtowc(3), mbsrtowcs(3), wcrtomb(3), wcsrtombs(3) TRADUCTION La traduction francaise de cette page de manuel a ete creee par Christophe Blaess , Stephan Rafin , Thierry Vignaud , Francois Micaux, Alain Portal , Jean-Philippe Guerard , Jean-Luc Coulon (f5ibh) , Julien Cristau , Thomas Huriaux , Nicolas Francois , Florentin Duneau , Simon Paillard , Denis Barbier , David Prevot , Jean-Baptiste Holcroft et Gregoire Scano Cette traduction est une documentation libre ; veuillez vous reporter a la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITE LEGALE. Si vous decouvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message a . Pages du manuel de Linux 6.06 28 janvier 2024 mbsinit(3)