table of contents
wcrtomb(3) | Library Functions Manual | wcrtomb(3) |
NOM¶
wcrtomb - Convertir un caractère large en séquence multioctet
BIBLIOTHÈQUE¶
Bibliothèque C standard (libc, -lc)
SYNOPSIS¶
#include <wchar.h>
size_t wcrtomb(char *restrict s, wchar_t wc, mbstate_t *restrict ps);
DESCRIPTION¶
L'utilisation principale de cette fonction est le cas où s est non NULL, et wc n'est pas un caractère large nul (L'\0'). Alors, la fonction wcrtomb() convertit le caractère large wc à sa représentation multioctet et l'enregistre au début de la chaîne pointée par s. Elle met à jour l'état de conversion *ps et renvoie la longueur de la représentation multioctet, c'est-à-dire le nombre d'octets écrits en s.
Une autre possibilité peut se présenter quand s est non NULL, mais wc est un caractère large nul (L'\0'). Dans cette situation, la fonction wcrtomb() enregistre dans la chaîne de caractères pointée par s la séquence de décalages nécessaire pour ramener *ps à son état initial, suivie d'un octet '\0'. Elle met à jour l'état *ps (le ramène donc à l'état initial), et renvoie la longueur de la séquence en ajoutant un pour compter le caractère nul final, c'est-à-dire le nombre d'octets écrits dans s.
Un troisième cas se présente quand s est NULL. Alors, wc est ignoré, et la fonction renvoie alors le résultat de
wcrtomb(tampon, L'\0', ps)
où tampon est un tampon interne anonyme.
Dans tous les cas ci-dessus, si ps est NULL, un état statique interne qui n'est connu que de la fonction wcrtomb() est utilisé à la place.
VALEUR RENVOYÉE¶
La fonction wcrtomb() renvoie le nombre d'octets qui ont été − ou qui auraient été − écrits dans le tableau d'octets s. Si wc ne peut pas être représenté comme une séquence multioctet (dans la locale en cours), elle renvoie (size_t) -1 et place EILSEQ dans errno.
ATTRIBUTS¶
Pour une explication des termes utilisés dans cette section, consulter attributes(7).
Interface | Attribut | Valeur |
wcrtomb() | Sécurité des threads | MT-Unsafe race:wcrtomb/!ps |
STANDARDS¶
C11, POSIX.1-2008.
HISTORIQUE¶
POSIX.1-2001, C99.
NOTES¶
Le comportement de wcrtomb() dépend de la catégorie LC_CTYPE de la locale utilisée.
Passer NULL dans ps n'est pas sûr dans un contexte multithread.
VOIR AUSSI¶
TRADUCTION¶
La traduction française de cette page de manuel a été créée par Christophe Blaess <https://www.blaess.fr/christophe/>, Stéphan Rafin <stephan.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.coulon@wanadoo.fr>, Julien Cristau <jcristau@debian.org>, Thomas Huriaux <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin Duneau <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, Denis Barbier <barbier@debian.org>, David Prévot <david@tilapin.org>, Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr> et Grégoire Scano <gregoire.scano@malloc.fr>
Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 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.
2 mai 2024 | Pages du manuel de Linux (non publiées) |