Provided by: manpages-fr-dev_3.27fr1.4-1_all bug

NOM

       iconv - Conversion de jeux de caracteres

SYNOPSIS

       #include <iconv.h>

       size_t iconv(iconv_t cd,
                    char **inbuf, size_t *inbytesleft,
                    char **outbuf, size_t *outbytesleft);

DESCRIPTION

       L'argument  cd  doit  etre  un  descripteur de conversion fourni par la
       fonction iconv_open(3).

       Cette routine est principalement utilisee quand inbuf  et  *inbuf  sont
       non  NULL.  Dans  ce  cas,  iconv()  convertit la sequence multi-octets
       debutant en *inbuf en une sequence multi-octets commencant en  *outbuf.
       Au  plus  *inbytesleft octets seront lus, en partant de *inbuf. Au plus
       *outbytesleft octets seront ecrits en commencant en *outbuf.

       La fonction iconv() convertit un caractere multi-octets a la fois. Pour
       chaque  conversion,  elle  augmente  *inbuf  et diminue *inbytesleft du
       nombre d'octets d'entree convertis, et elle augmente *outbuf et diminue
       *outbytesleft  du nombre d'octets de sortie ecrits et met a jour l'etat
       de conversion contenu au sein de cd. La conversion peut s'arreter  pour
       quatre raisons :

       1.  Une sequence multi-octets invalide a ete trouvee en entree. Dans ce
       cas, errno est definie a EILSEQ et  la  fonction  renvoie  (size_t) -1.
       Ensuite,  *inbuf  pointera  sur  le  debut  de la sequence multi-octets
       invalide.

       2. La sequence  d'entree  multi-octets  a  ete  convertie  entierement,
       c'est-a-dire  que  *inbytesleft est descendu jusqu'a zero. Dans ce cas,
       iconv() renvoie le nombre de conversions irreversibles realisees durant
       l'appel.

       3.  Une  sequence  multi-octets  incomplete  a ete trouvee alors que la
       sequence d'entree se terminait. Dans ce cas, errno est definie a EINVAL
       et  la  fonction  renvoie  (size_t) -1. Ensuite, *inbuf pointera sur le
       debut de la sequence multi-octets incomplete.

       4. Le tampon de sortie n'a plus  de  place  pour  stocker  le  prochain
       caractere  converti. Dans ce cas, errno contiendra E2BIG et la fonction
       renverra (size_t) -1.

       Une autre possibilite se presente quand inbuf ou *inbuf est NULL,  mais
       si  ni  outbuf, ni *outbuf ne le sont. Dans ce cas, la fonction iconv()
       essaye de mettre l'etat de conversion de cd dans l'etat initial, et  de
       memoriser  la  sequence  de  decalage  correspondante  dans *outbuf. Au
       maximum *outbytesleft octets seront ecrits en commencant en *outbuf. Si
       le  tampon  de sortie ne contient pas assez de place pour reinitialiser
       la  sequence,  errno  est  definie  a  E2BIG  et  la  fonction  renvoie
       (size_t) -1.  Sinon,  elle augmente *outbuf et diminue *outbytesleft du
       nombre d'octets ecrits.

       Un troisieme cas est possible, si inbuf  ou  *inbuf  est  NULL,  et  si
       outbuf  ou  *outbuf  est NULL. Dans ce cas, la fonction iconv() replace
       l'etat de conversion cd dans l'etat de conversion initial.

MISE EN GARDE

       Le type d'inbuf et outbuf, char **, n'impliquent  pas  que  les  objets
       pointes sont des chaines de caracteres C termines par le caractere nul,
       ou des tableaux de caracteres.  La  fonction  qui  appelle  iconv  doit
       s'assurer que les pointeurs passes a la fonction soient adaptes pour un
       acces aux caracteres dans le jeu de caracteres approprie.  Ceci  inclut
       l'alignement,  sur  les plateformes qui ont de severes restrictions sur
       l'alignement.

VALEUR RENVOY'EE

       La fonction iconv()  renvoie  le  nombre  de  caracteres  convertis  de
       maniere  irreversible  durant  l'appel.  Les conversions reversibles ne
       sont pas prises en compte. En cas d'erreur la fonction remplit errno et
       renvoie (size_t) -1.

ERREURS

       Les erreurs suivantes peuvent se produire, entre autres :

       E2BIG  Il n'y a pas assez de place dans *outbuf.

       EILSEQ Une sequence multi-octets invalide a ete trouvee en entree.

       EINVAL Une sequence multi-octets incomplete a ete trouvee en entree.

VERSIONS

       Cette fonction est disponible dans la glibc depuis la version 2.1.

CONFORMIT'E

       POSIX.1-2001.

VOIR AUSSI

       iconv_close(3), iconv_open(3)

COLOPHON

       Cette  page  fait  partie  de  la  publication 3.27 du projet man-pages
       Linux. Une description du projet et des instructions pour signaler  des
       anomalies       peuvent       etre       trouvees      a      l'adresse
       <URL:http://www.kernel.org/doc/man-pages/>.

TRADUCTION

       Depuis 2010, cette traduction est maintenue a l'aide  de  l'outil  po4a
       <URL:http://po4a.alioth.debian.org/>   par   l'equipe   de   traduction
       francophone       au       sein        du        projet        perkamon
       <URL:http://perkamon.alioth.debian.org/>.

       Christophe  Blaess  <URL:http://www.blaess.fr/christophe/> (1996-2003),
       Alain Portal <URL:http://manpagesfr.free.fr/>  (2003-2006).   Florentin
       Duneau et l'equipe francophone de traduction de Debian (2006-2009).

       Veuillez   signaler   toute   erreur   de   traduction  en  ecrivant  a
       <debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le
       paquet manpages-fr.

       Vous  pouvez  toujours avoir acces a la version anglaise de ce document
       en utilisant la commande << man -L C <section> <page_de_man> >>.