Bonjour,
J'aurais une question concernant du C++ et la conversion de donnée.
Je m'explique : J'ai un arduino qui m’envoie par liaison série 4 blocs de 8 valeurs en hexa, de la manière suivante :
1FB234AC,4563BFED,987ABDC1,928 3DCBA
Liaison série oblige, je récupère ces valeurs sous forme de char ou de string.
Suite à cela, j'aimerai effectuer une série d'opération que j'arrive a faire très bien en java, de la manière suivante :
J'aimerai donc reproduire le code souligné, mais en C++. Cependant j'aimerai faire cela de la manière la plus efficace qui soit, mais je n'y arrive pas vraiment. Avez vous une idée?Code:float decodeFloat(String inString) { byte [] inData = new byte[4]; if(inString.length() == 8) { inData[0] = (byte) unhex(inString.substring(0, 2)); inData[1] = (byte) unhex(inString.substring(2, 4)); inData[2] = (byte) unhex(inString.substring(4, 6)); inData[3] = (byte) unhex(inString.substring(6, 8)); } int intbits = (inData[3] << 24) | ((inData[2] & 0xff) << 16) | ((inData[1] & 0xff) << 8) | (inData[0] & 0xff); return Float.intBitsToFloat(intbits); }
Merci d'avance,
RD
-----