Je réalise actuellement un petit programme pour traiter des trames

J'ai des float, int et string
Pour les float, je fais face à un problème que je n'arrive pas à résoudre.

La trame qui m'intéresse avec en gras ce que je prends
$IIMWV,220.1,R,000.30,N,A

Voilà ma méthode pour traiter les valeurs que j'ai extrait le 220.1
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 
float WM918::DecapsuleDirectionVent(String DirectionBrute)
{
        int     Cen,
                Diz,
                Uni,
                Dix;
        float   Resultat=0;
 
        Cen=(VitesseBrute[1] & 0x0f);
        Diz=(VitesseBrute[2] & 0x0f);
        Uni=(VitesseBrute[3] & 0x0f);
        Dix=(VitesseBrute[5] & 0x0f);
 
        Resultat= (Cen*100)+(Diz*10)+Uni+(Dix*0.1);
 
        return Resultat;
}
Je devrais récupérer un float = 220.1 alors que je récupère un float = 220,100006103516

Je ne comprends pas pourquoi même en mettant un Resultat=Resultat-0,000006103516 avant le return je trouve toujours 220,100006103516 !

Merci d'avance pour vos futurs réponses