problèmes de précision - C - Programmation
Marsh Posté le 07-07-2004 à 12:25:37
Juste une petite chose .... pour les calculs, j'utilise pas mal de #define pour déclarer des constantes, dans un fichier .h
Peut-on spécifier le format de la constante par la même occasion ?
Marsh Posté le 07-07-2004 à 13:09:14
non elle est en double là y'a pas de doute.
Marsh Posté le 07-07-2004 à 13:17:46
La variable est stockée en double, mais le résultat est-il obtenu par exemple en faisant (double) (1.0/y) ou ((double) 1.0) /y ??? ce qui ne me semble pas tout à fait équivalent
Marsh Posté le 07-07-2004 à 14:13:35
Pour etre un peu plus clair, voila ou ca coince ...
Code :
|
Marsh Posté le 07-07-2004 à 14:14:32
desole pour la declaration de fonction, c'est vraiment bourrin, mais j'ai rien trouve de mieux que ca .....
Marsh Posté le 07-07-2004 à 12:11:50
Bonjour à tous
Voilà, comme d'habitude, j'ai un problème.
J'ai programmé quelques fonctions, on faisant toujours attention à déclarer mes variables en double, et non en float (j'ai besoin de grands nombres, et surtout d'au moins 10 décimales).
Seulement, il apparait que lors d'une bête addition, on me renvoie un truc du genre 10E20 + 10E20 = -Inf (je suis pas sûr de la puissance, mais bon, ça devrait pas arriver avec des exposants aussi petits en double).
D'où ma question : quand on déclare une variable en double, peut-elle être implicitement castée en float (avec la perte de précision que cela entraîne), ou alors est-ce que le double de la déclaration "l'emporte" ???
Par exemple :
double x,y;
y=(un double quoi);
x=1.0/y; ----> x est double ou float maintenant ???