valeur max float, jai du raté un épisode

Bonjour a tous,

de bon matin je me dis je vais reregardé la valeur max que peut prendre un float, je vais sur cette page :

http://www.arduino.cc/en/Reference/Float

et je lis 3.4028235E+38

quoi un float pourrait etre plus long qu'un unsignedLong (4,294,967,295 (2^32 - 1)) ?

D'ou ma question, la valeur max d'un float cest bien 3.4028235E+38 ???

Merci

Fais un essai ;D

A priori oui, elles sont toutes les deux sur 32 bits (4 bits).
Les différences sont ailleurs il me semble (valeurs négatives, etc.).

Ils ne sont pas codé de la même manière.
Dans un unsigned long tous les bits codent le nombre d'où 2^32 valeurs.
Dans un float le nombre est codé sous la forme mantisse plus exposant. Une partie des bits codent la mantisse et les reste des bits codent l'exposant. De ce fait on peut coder des nombres plus grand mais en contre partie on est limité en précision.
Plus de détails ici : Float — Wikipédia