Provided by: manpages-fr-dev_4.23.1-1_all
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
mbsinit(3), wcsrtombs(3)
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 ⟨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⟩.