# Codage des float : afficher un flottant en hexa en C

**URL:** <https://www.debian-fr.org/t/codage-des-float-afficher-un-flottant-en-hexa-en-c/66628>\
**Category:** Programmation\
**Created:** [Février 21, 2016, 9:49 UTC](https://www.debian-fr.org/t/codage-des-float-afficher-un-flottant-en-hexa-en-c/66628 "2016-02-21T21:49:35Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![MisterMagoo](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/m/3e96dc/32.png) [@MisterMagoo](https://www.debian-fr.org/u/MisterMagoo)\
**Post date:** [Février 21, 2016, 9:49 UTC](https://www.debian-fr.org/t/codage-des-float-afficher-un-flottant-en-hexa-en-c/66628/1 "2016-02-21T21:49:35Z")

</div>

Bonjour,  
Je souhaite vérifier le codage d’un nombre à virgule flottante sur 32 bits  
avec le programme C suivant :

```auto
#include <stdio.h>
int main()
{
        float f=-785.640625;
        unsigned int i = *(int*)&f ;    
        printf("%x\n",i) ;
}
```

Cependant le résultat obtenu n’est pas le bon même si c’est tout près et c’est justement cela que je ne comprends pas.  
Résultat obtenu : c4446900  
Résultat attendu : c4690088

Merci de votre aide

---

<div class="post-metadata">

**Author:** ![flavien](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/f/f475e1/32.png) [@flavien](https://www.debian-fr.org/u/flavien)\
**Post date:** [Février 21, 2016, 9:49 UTC](https://www.debian-fr.org/t/codage-des-float-afficher-un-flottant-en-hexa-en-c/66628/2 "2016-02-21T21:49:37Z")

</div>

Salut,

à en croire une conversion en ligne accessible [icl](http://gregstoll.dyndns.org/~gregstoll/floattohex/) :

0xc4690088 donne -932.008301  
0xc4446900 donne -785.640625

Ton programme donne ces deux mêmes résultats (d’après mes tests). Pourquoi dis-tu que -785.640625 devrait donner 0xc4690088 ?

---

<div class="post-metadata">

**Author:** ![MisterMagoo](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/m/3e96dc/32.png) [@MisterMagoo](https://www.debian-fr.org/u/MisterMagoo)\
**Post date:** [Février 21, 2016, 9:49 UTC](https://www.debian-fr.org/t/codage-des-float-afficher-un-flottant-en-hexa-en-c/66628/3 "2016-02-21T21:49:38Z")

</div>

En effet, je viens de refaire mes calculs … mal recopié la mantisse.  
Donc le programme est correct.  
Merci
