cs_snoop44
Messages postés9Date d'inscriptiondimanche 20 février 2005StatutMembreDernière intervention23 septembre 2011
-
18 oct. 2010 à 20:03
cptpingu
Messages postés3837Date d'inscriptiondimanche 12 décembre 2004StatutModérateurDernière intervention28 mars 2023
-
19 oct. 2010 à 10:11
Bonjour a tous !
Voila mon petit soucis : Je souhaite "caster" un int pour l'écrire dans un char* avant de faire appel a une fonction qui requiert un argument de type char (La fonction écrit dans un fichier).
Voici mon code :
int main(void)
{
short int resultat;
short int *presultat;
char *value_to_add="nouvel essai\n", *value2="essai";
int i;
resultat=10;
presultat = &resultat;
fadd(nom_fichier,value_to_add,presultat);
for (i=1; i<6; i++)
{
//sprintf(*value_to_add,"%d",1);
//*value_to_add=(char)i;
fadd(nom_fichier,value_to_add,presultat);
fadd(nom_fichier,value2,presultat);
printf("%d",i);
}
printf("Resulat de la fonction : %d",resultat);
}
cptpingu
Messages postés3837Date d'inscriptiondimanche 12 décembre 2004StatutModérateurDernière intervention28 mars 2023123 19 oct. 2010 à 10:11
itoa n'est pas standard contrairement à sprintf ou snprintf
Ça fait plaisir des gens soucieux du standard et de la portabilité !
Si tu sais que ton chiffre ne sera jamais très grand, tu peux aussi utiliser un buffer de taille statique, plutôt qu'un malloc.
Attention, non testé:
int main(void)
{
short int resultat;
char value_to_add[256];
int i;
resultat = 10;
fadd(nom_fichier, value_to_add, &resultat);
for (i = 1; i < 6; ++i)
{
sprintf(value_to_add, "%d", i);
fadd(nom_fichier, value_to_add, &resultat);
/*fadd(nom_fichier, value2, &resultat);*/
printf("%d",i);
}
printf("Resulat de la fonction : %d", resultat);
}
________________________________________________________________________
Historique de mes créations, et quelques articles:
[ http://0217021.free.fr/portfoliohttp://0217021.free.fr/portfolio]
Merci d'utiliser Réponse acceptée si un post répond à votre question