[newbie] Problème printf avec float
Le
Florent GABRIEL
Bonjour,
Un programme valant mieux que milles palabres :-)
/* -- CODE -- */
#include <stdio.h>
#include <iostream.h>
struct Data
{
long long ll;
float f1;
float f2;
};
int main( )
{
Data d;
d.ll = 5;
d.f1 = 12.5;
d.f2 = 32.7;
printf("Avec printf : %i - %f , %f",d.ll,d.f1,d.f2);
std::cout << "Avec cout : " << d.ll << " - " << d.f1 << " , " << d.f2
<< std::endl;
return 0;
}
/* -END CODE */
Je récupére en sortie :
Avec printf : 5 - 0.000000 , -0.000000
Avec cout : 5 - 12.5 , 32.7
Pourquoi mon printf ne fonctionne pas ?
Merci d'avance.
TSalm
--
Utilisant le client e-mail révolutionnaire d'Opera :
http://www.opera.com/mail/
Un programme valant mieux que milles palabres :-)
/* -- CODE -- */
#include <stdio.h>
#include <iostream.h>
struct Data
{
long long ll;
float f1;
float f2;
};
int main( )
{
Data d;
d.ll = 5;
d.f1 = 12.5;
d.f2 = 32.7;
printf("Avec printf : %i - %f , %f",d.ll,d.f1,d.f2);
std::cout << "Avec cout : " << d.ll << " - " << d.f1 << " , " << d.f2
<< std::endl;
return 0;
}
/* -END CODE */
Je récupére en sortie :
Avec printf : 5 - 0.000000 , -0.000000
Avec cout : 5 - 12.5 , 32.7
Pourquoi mon printf ne fonctionne pas ?
Merci d'avance.
TSalm
--
Utilisant le client e-mail révolutionnaire d'Opera :
http://www.opera.com/mail/

Poser une question


printf("Avec printf : %lli - %f , %fn",d.ll,d.f1,d.f2);
--
Richard
Exact, merci!
Pas du C.
Ah. Je m'inqiétais sur votre santé. Me voilà rassuré.
Ne serait-il pas préférable de proposer au monsieur une manipulation
sur le thème:
#include
int main( )
{
printf("Avec printf : %i - %f , %fn", 0x500000007LL, 12.5,
32.7);
printf("Avec printf : %f - %f , %in", 12.5, 32.7,
0x500000007LL);
printf("Avec printf : %lli - %f , %fn", 0x500000007LL, 12.5,
32.7);
printf("Avec printf : %f - %f , %llin", 12.5, 32.7,
0x500000007LL);
return 0;
}
Hein ?
--
Pierre Maurette
-ed- est un peu rigide donc il n'aime pas les flottants ;)
Sinon, ton exemple est pas mal bien qu'un peu surchargé et légèrement incomplet
puisqu'il faudrait l'accompagner de l'affichage correspondant, chez moi :
Avec printf : 7 - 0.000000 , -0.000000
Avec printf : 12.500000 - 32.700000 , 7
Avec printf : 21474836487 - 12.500000 , 32.700000
Avec printf : 12.500000 - 32.700000 , 21474836487
avec les warnings suivants
$ gcc -W -Wall -stdÉ9 -pedantic -o x fclc.c
fclc.c: Dans la fonction «main» :
fclc.c:5: attention : format «%i» expects type «int», but argument 2 has type
«long long int»
fclc.c:6: attention : format «%i» expects type «int», but argument 4 has type
«long long int»