100 votes

Comment obtenir DOUBLE_MAX ?

AFAIK, C ne prend en charge que quelques types de données :

 int, float, double, char, void enum.

J'ai besoin de stocker un nombre pouvant atteindre les 10 chiffres les plus élevés. Étant donné que j'obtiens un nombre faible à 10 chiffres de

INT_MAX

, je suppose que j'ai besoin d'un double.

<limits.h> n'a pas de DOUBLE_MAX . J'ai trouvé un DBL_MAX sur Internet qui disait qu'il s'agissait de LEGACY et qui semble également être du C++. Est-ce que j'ai besoin du double? Pourquoi n'y a-t-il pas de DOUBLE_MAX ?

11voto

Sodved Points 5317

C'est dans le fichier d'inclusion standard float.h. Vous voulez DBL_MAX

9voto

R.. Points 93718

L'utilisation de double pour stocker de grands entiers est douteuse ; le plus grand entier pouvant être stocké de manière fiable dans double est beaucoup plus petit que DBL_MAX . Vous devez utiliser long long , et si cela ne suffit pas, vous avez besoin de votre propre code de précision arbitraire ou d'une bibliothèque existante.

5voto

Femaref Points 41959

Vous recherchez l'en-tête float.h

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X