Error sscanf

Galmiza Messages postés 573 Date d'inscription samedi 16 novembre 2002 Statut Membre Dernière intervention 9 avril 2008 - 27 avril 2005 à 11:17
Galmiza Messages postés 573 Date d'inscription samedi 16 novembre 2002 Statut Membre Dernière intervention 9 avril 2008 - 28 avril 2005 à 09:45
Salut,

J'ai une erreur lors de l'execution d'un programme au niveau d'un sscanf tout simple:

tmp pointe vers "10.0" (c'est sûr, vérifié dans le debugger)

float flt;
sscanf(tmp, "%f", &flt);

La compilation se déroule sans problème mais le programme s'arrête sur une erreur 6002 comme quoi il n'a pas été possible de convertir en float.

D'où peut venir le problème ?

Merci

2 réponses

ymca2003 Messages postés 2070 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 3 juillet 2006 7
27 avril 2005 à 12:46
float flt = 0.0;
sscanf(tmp, "%f", &flt);

si le sscanf est la première fct à gérer les float il y a une erreur selon mes souvenirs, il faut qu'il y ai juste avant une instruction qui utilise la FPU (une init à 0.0 devrait suffir).
0
Galmiza Messages postés 573 Date d'inscription samedi 16 novembre 2002 Statut Membre Dernière intervention 9 avril 2008 1
28 avril 2005 à 09:45
Merci beaucoup pour l'explication, je vais essayer d'initialiser le float.
Sinon ça fonctionne bien avec:

sscanf(tmp, "%e", &flt);
0
Rejoignez-nous