3.5.2 Les variables de type réel

Icône de l'outil pédagogique Les variables de type réel

 

La variable réelle double précision (à utiliser par défaut) est définie à l'aide du mot‐clé double. Elle occupe 8 octets en mémoire. La taille de la mantisse (52 bits) garantit une précision relative de dans les calculs : c’est le principal critère de choix d’un type réel.

La variable réelle simple précision est définie à l'aide du mot‐clé float. Elle occupe 4 octets en mémoire. La taille de la mantisse (23 bits) garantit une précision relative de 10‐6 (ce n’est pas beaucoup !).

Sauf quand la place est vraiment critique, le type float est abandonné au profit de double sur les processeurs modernes (PC). Sur les microcontrôleurs, il faut essayer d’éviter les réels ; seul le type float est parfois utilisable.

La valeur d’un nombre réel peut s'écrire de deux façons en Langage C :

– sous forme décimale [‐]ddd.dddddd : par exemple 23.145 ou 1.0 ou ‐345.09
– sous forme scientifique (qui s’écrit en mathématiques M.10x avec exposant x et mantisse M).
En C, cette notation exponentielle s'écrit [‐]d.ddddddE[‐]ddd (la lettre e ou E sert à introduire l'exposant entier) : par exemple 4.19E‐3 (qui signifie 4,19.10‐3) ou ‐3e20 (qui signifie ‐3.1020) ;

Par défaut, les valeurs numériques sont de type double. Pour indiquer une valeur float, on peut les terminer par la lettre f (exemple 1.56f ou -5.7e4f). Mais le compilateur sait effectuer les conversions implicites qui conviennent si le f est absent.

Exemple 4, Déclaration et initialisation de variables réelles :