Question extension fichier + pb float

Résolu
jeromedu94 Messages postés 83 Date d'inscription mardi 24 février 2004 Statut Membre Dernière intervention 10 mars 2006 - 9 mars 2006 à 19:57
SAKingdom Messages postés 3212 Date d'inscription lundi 7 novembre 2005 Statut Membre Dernière intervention 16 février 2009 - 11 mars 2006 à 00:44
Bonjour,

Tout d'abord, j'ai une question sur les fichiers, je sais que l'extension fait partie du nom, mais serait-il possible d'ouvrir un fichier dont on connait l'emplacement et le nom mais pas l'extension.

Ensuite je viens de m'apercevoir d'un problème concernant les float. Voici le petit bout de programme suivant :

float i=0;

while (1)
printf ("\r%f",i++)

Je sais qui'l y a un while(1) et que ce n'est pas bien mais cest juste pour tester la chose.
Donc normalement, on devrait voir afficher sur la console la valeur de i qui s'incrémente de 1 à chaque fois sans s'arrêter.
Sauf que ce petit arrete de s'incrémenter quand il atteint 16777216. Et je ne comprends pas pourquoi.

Remarque : 16777216 = 16 * 1024* 1024 y a t-il un lien ?

Merci d'avance

7 réponses

julienbj Messages postés 452 Date d'inscription jeudi 4 décembre 2003 Statut Membre Dernière intervention 19 décembre 2008 15
9 mars 2006 à 22:28
Sous windows ton prog?
Si oui, regarde dans mes sources. Il y en a une sur les fichiers.
Dedans, il y a une fonction qui liste tous les fichiers portant une extension donnée, en la modifiant un peu, tu peux lister tous les fichiers commencant d'une certaines facon.
Ainsi tu récupéreras ton fichier avec son extension.

Vive le C
Tchao
[mailto:julienbj@hotmail.com Savon]
3
SAKingdom Messages postés 3212 Date d'inscription lundi 7 novembre 2005 Statut Membre Dernière intervention 16 février 2009 15
9 mars 2006 à 20:49
Bon pour le fichier, je ne crois pas qu'il y ai de solution pour l'ouvrir sans l'extension. Pour le float trace ton programme avec le debuggeur et regarde ce qui cloche.
0
BunoCS Messages postés 15472 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 25 mars 2024 103
10 mars 2006 à 09:26
Que les pro me confirme, mais l'opérateur "++" ne fonctionne qu'avec des entiers, et non pas des float

Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Le site de mon mariage
0
jeromedu94 Messages postés 83 Date d'inscription mardi 24 février 2004 Statut Membre Dernière intervention 10 mars 2006
10 mars 2006 à 23:00
Merci julienbj.

Pour le problème avec le float, buno le problème persiste si tu mets i = i + 1;


et si tu initialises i avec une valeur supérieure à 16777216, il ne s'incrémente pas du tout.

Je vois vraiment pas pourquoi ça fait ça.
Rq : il n'y a pas ce problème avec les doubles du moins pas a cette valeur.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jeromedu94 Messages postés 83 Date d'inscription mardi 24 février 2004 Statut Membre Dernière intervention 10 mars 2006
10 mars 2006 à 23:28
Je viens de faire le test avec un double. ça fait la même chose, il reste bloqué à 9007199254740992 soit 2^53.


étrange, étrange ...
0
SAKingdom Messages postés 3212 Date d'inscription lundi 7 novembre 2005 Statut Membre Dernière intervention 16 février 2009 15
11 mars 2006 à 00:37
Message pour Buno. Non l'opérateur ++ peut fonctionner avec des float mais il va les incrémenter de 1.0 pas de 0.1. Pour ça je crois que l'on peut faire += 0.1

___________________________________________
Les plus grands esprits trouvent toujours une solution
0
SAKingdom Messages postés 3212 Date d'inscription lundi 7 novembre 2005 Statut Membre Dernière intervention 16 février 2009 15
11 mars 2006 à 00:44
Pour Jeromedu94, en effet c'est étrange. Ton double a peut-être attein sa valeur maximal ou il n'a plus asser de mémoire. Quoi qu'il en soit moi n'on plus je comprend pas trop.

___________________________________________
Les plus grands esprits trouvent toujours une solution
0
Rejoignez-nous