bonjour,
la fonction itoa fonctionne correctement, mais est un peu trop orientée 'C'
voici ce que je te propose, l'utilisation du "stringstream"
a toi d'y mettre les types que tu désire (ici un int et un float)
#include <sstream>
#include
int main()
{
using namespace std;
string s = "chaine";
int i=0;
float f = 2.01F;
stringstream buffer;
buffer << s << " " << i << " " << f ;
//conversion nécessaire pour affichage
cout << buffer.str() << endl;
return 0;
}
Pour transformer un int en char a la main :
Décomposer le nb en milliers , centaines , dizaines ...
Connaitre la valeur de 0 et de 9 ( en ascii 48 et 57)
Allouer la mémoire pour la chaine
et grace a la valeur ascii on peut remplire la chaine
(48 + nbaconvertir)
je n'arrive pas avec la solution que tu m'as donné. Par contre je peux peut être expliquer mieux ce que je souhaite faire.
en fait g un text box je recupère la valeurs qu'il y a dedans pus je l'additionne ensuite je veux faire apparaitre le resultat dedans mais il me faut convertir mon type int en string ou en char.
g encore un souci lorsque je genere ma solution je n'ai pas d'erreur par contre lorsque j'execute le programme et que je clique sur le bouton qui genere le code, g ce message qui apparait:
Debug Assertion Failed
File sprintf.c
Expression: string!=NULL
For information on how your program can cause an assertion failure, see the visual C++ document on asserts.
#include <tchar.h>
using namespace std;
using namespace System;
using namespace System::ComponentModel;
using namespace System::Windows::Forms;
using namespace System::Drawing;
using namespace System::Drawing::Text;
__gc public class CalForm:public Form
{
private:
Button* Btn1;
Button* Btn2;
Button* Btn3;
Button* Btn4;
Button* Btn5;
Button* Btn6;
Button* Btn7;
Button* Btn8;
Button* Btn9;
Button* Btn0;
Button* Btnp;
Button* Btnm;
Button* Btnmult;
Button* Btneg;
Button* BtnOn;
TextBox*text1;
int a;
int b;
int res;
char* var;
Tiens voila une fonction bien pratique utilisant les flux et template
template <class OUT, class IN>
OUT Convert(const IN & t)
{
//variable de sortie de type OUT
OUT tmp;
//declaration du flux
stringstream Flux;
//copie de l'entree dans le flux
Flux << t;
//copie du flux dans sortie
Flux >> tmp;
return tmp;
}
tu l'appelle en faisant : (tu peut meme faire un string->int)
int a=12456;
string s="1354";
s=Convert<string>(a);
a=Convert(s);
Filipuce - Si ce que tu as à dire n'est pas plus beau que le silence alors tais-toi