OVH Cloud OVH Cloud

int to char *

5 réponses
Avatar
Pascal
Bonjour,

Est ce qu'il existe une fonction inverse à atoi, qui me transforme un
int en char *?

5 réponses

Avatar
Pascal
Bonjour,

Est ce qu'il existe une fonction inverse à atoi, qui me transforme un
int en char *?


Je précise que c'est un nombre à deux chiffres, et non pas un simple
chiffre.

Avatar
fabrizio
Est ce qu'il existe une fonction inverse à atoi, qui me transforme un
int en char *?


Ce genre de chose s'effectue grâce à printf, sprintf, fprintf.
Transformer en chaine de caractère veut dire imprimer.

Avatar
Christophe de VIENNE
Ce genre de chose s'effectue grâce à printf, sprintf, fprintf.


En C++ on leur préfère les flux...

Par exemple :

int i = 12;
std::stringstream o;
o << i;
assert(o.str() == "12");


--
Christophe de Vienne

Avatar
Vincent Lascaux
En C++ on leur préfère les flux...

Par exemple :

int i = 12;
std::stringstream o;
o << i;


La librairie boost permet de faire ca assez elegamment :
assert(boost::lexical_cast<std::string>(12) == "12");

L'interet c'est que c'est la même fonction qui sert à convertir de n'importe
quoi (qui définit un opérateur <<) vers n'importe quoi (qui définit un
opérateur >>). Donc on aurait fait
boost::lexical_cast<int>("12") pour convertir la chaine de caracteres en
entier.

--
Vincent

Avatar
Sivaller
de mémoire : itoa(int i,char*,int base)