Bonjour,
J'ai le fichier suivant à lire :
J'ai donc écrit :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 160 3.1822565e-01 6.1230318e-17 0.0000000e+00 -1.0000000e+00 2.8173256e-01 0.0000000e+00 -9.5949297e-01 1.7565738e-01 2.2026738e-01 -9.5949297e-01
ce qui me renvoie
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 unsigned int nS; double r; if(fscanf(f, "%i %f\n", &nS, &r)==EOF) return false; cout << "nb de points = " << nS << endl; cout << "rayon = " << r << endl; double xx,yy,zz; if(fscanf(f, "%lf %lf %lf\n", &xx, &yy, &zz)==EOF) return false; cout << "xx = " << xx << endl; cout << "yy = " << yy << endl; cout << "zz = " << zz << endl;
1) Le rayon n'est pas bon il me prend que le premier chiffre
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 nb de points = 160 rayon = 3 xx = 6.94418e-310 yy = 1.53153e-316 zz = 3.40905e-322
2) La deuxième ligne est complètement fausse, fscanf n'a pas réussi à socker les valeurs dans les variables xx,yy,zz.
Si je récupère déjà la chaine correspondant au rayon ça me prend bien 3.1822565e-01, mais si ensuite je veux la caster en double via atof() ça m'affiche de nouveau 3 ! En fouillant sur le forum je suis tombé sur ce fil : http://www.developpez.net/forums/d29...fonction-atof/, et comme j'utilise la lib qglviewer dans mon programme principal je me dis que c'est peut-être un peu pareil... comment faire ?
Ce qui est étrange c'est que le même code tourne sans problèle sur le PC de mon prof. Donc ce n'est pas un problème dans le code mais une histoire d'architecture ou de compilation. Je compile via un Makefile généré par le .pro suivant (avec qmake-qt4) :
Merci
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 TARGET = pointsToSurface CONFIG *= qt opengl release QT *= opengl xml QMAKE_CXXFLAGS += -Werror HEADERS = geom.h iso_value.h data_struct_algo.h pointsToSurface.h eventWidget.h viewer.h SOURCES = geom.cpp iso_value.cpp data_struct_algo.cpp pointsToSurface.cpp eventWidget.cpp viewer.cpp main.cpp LIBS *= -lqglviewer-qt4 INCLUDEPATH *= /home/inf0phile/Téléchargements/libQGLViewer-2.3.17
Partager