Bonsoir a tous,
voila je viens de recompiler un programme que j'avais fait sous VC2003 avec VC2005. et il me dit que la fonction itoa() est 'deprecated'. j'aimerais savoir par quoi il faudrait la remplacer?
Merci par avance.
Bob
Version imprimable
Bonsoir a tous,
voila je viens de recompiler un programme que j'avais fait sous VC2003 avec VC2005. et il me dit que la fonction itoa() est 'deprecated'. j'aimerais savoir par quoi il faudrait la remplacer?
Merci par avance.
Bob
sprintf en C, et un flux ostringstream en C++.
Voir les FAQs correspondantes.
Bonsoir
http://c.developpez.com/faq/cpp/?pag...RINGS_numtostr
ou avec un CString, voir la fonction Format
ok merci, je crois que je vais utiliser sprintf(). merci
sprintf() est déprecated aussi, sprintf_s() et snprintf_s() sont un peu pourris, _snprintf() est deprecated, et le snprintf() du standard C99 n'est pas reconnu par Windows.
Mon conseil: #define _CRT_SECURE_NO_DEPRECATE avant d'inclure stdio.h et tu utilises ce _itoa ou _snprintf() (ne pas oublier de forcer toi-même un zéro terminal à la fin du buffer).
Tu pourras corriger quand le véritable snprintf() sortira enfin sous visual (s'il sort un jour)
(Ou bien, snprintf_s() avec le paramètre TRUNCATE)
Enfin franchement, le mieux est de passer par une macro dont tu définiras le comportement effectif selon le cas...
Tu as, à mon avis, beaucoup plus interet à utiliser la méthode Format des CString, qui fonctionne sur le meme principe que sprintf
et pour atoi() ?
8O
En C, strtol(char *, char **, int base).
- strtol()
- FAQ C++
EDIT : :twisted: respect, ya eu plus rapide que moi