ricool
Messages postés22Date d'inscriptionsamedi 8 novembre 2003StatutMembreDernière intervention24 juillet 2005
-
30 oct. 2004 à 22:56
magic_Nono
Messages postés1878Date d'inscriptionjeudi 16 octobre 2003StatutMembreDernière intervention16 mars 2011
-
3 nov. 2004 à 11:17
Salut a tous
voila j'ai un probleme de conversion de type
j'ai un prog avec client - serveur, le client envoi des chiffre au serveur, celui ci calcul une somme et l'envoie au client
le probleme c'est que la fonction d'ecriture prend un char et non un float.
Si quelqu'un c'est comment faire pour convertir un float en char fait moi signe
cs_JCDjcd
Messages postés1138Date d'inscriptionmardi 10 juin 2003StatutMembreDernière intervention25 janvier 20094 1 nov. 2004 à 14:08
heu ... non, je ne pense pas que char(c) compile car c'est un mon cle du langage C/C++, donc (char)f est un caste, et ca ne retourne certainement pas 5, la vrai solution est celle de aardman :
char buf[256];
float f=3.1415926535;
sprintf(buf,"%f",f); // sprintf(buf,"%e",f); pour l'ecriture en exposant
cs_JCDjcd
Messages postés1138Date d'inscriptionmardi 10 juin 2003StatutMembreDernière intervention25 janvier 20094 2 nov. 2004 à 10:23
il existe un caste "coherent" entre le int et le char (d'ailleur le sprintf convertit tout le char en int), mais un caste entre un float et un char est totalement incoherent. Il suffit de regarder comment est formate un float en memoire, et se rendre compte que (char)(5.) ne fait pas 5 en ascii