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
Je devrais récupérer un float = 220.1 alors que je récupère un float = 220,100006103516
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 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
Partager