Code: char. ptest = nullptr; double dV = strtod(myByteArray9,&ptest); wenn alles ok lief, muss in Dv dein wert stehen, und ptest muss auf das erste zeichen im bytearray zeigen, was nimmer zu deiner Zahl gehoert. Was ich mich allerdings frage, wenn das ganze so performance kritisch ist, wieso bekommst deine Daten dann in nem QByteArray. Eigentlich solltest mit deiner funktion dann direkt auf die Puffer schiessen, die von deiner 'eingabe' (was auch immer das ist) direkt befuellt werden. Oder schiesst die Eingabe auf ein Praeperiertes QByteArray???
Code: memcpy(f, myByteArray9,4); das kopiert nur die 4 byte runter und reinterpretiert die dann als float. Das was ganz anderes!
Qt Serial Port provides the basic functionality, which includes configuring, I/O operations, getting and setting the control signals of the RS-232 pinouts. The following items are not supported by this module: Terminal features, such as echo, control CR/LF, and so on. Configuring timeouts and delays while reading or writing. The communication for the MERLIC Frontend has been improved. A new topic which lists all available keyboard shortcuts together with a short description. In addition, the parameter and result names of the tools 'Serielle Schnittstelle. The MERLIC Frontend ActiveX Control could not be used in a Qt C++ application.
![Qt Kommunikation Über Serielle Schnittstelle Beispiel Brief Qt Kommunikation Über Serielle Schnittstelle Beispiel Brief](http://diwo.bq.com/wp-content/uploads/2016/02/bitbloq2-serialMonitor.png)
Das kann natuerlich richtig sein, wenn: - Der sender es genau so macht, also die floats einfach binaer auf den Datenstrom raufkopiert - Sender und empfaenger gleiche Umgebung haben (gleiche byte Ausrichtung LSB/MSB, beide die selbe definition von 4 Byte FLoats haben, gleichegrossen bereich fuer Mantisse und exponent) Normal geht man bei serieller Kommunikation nicht davon aus, sondern die iss meist Textbasierend (bessere debugbarkeit, logging, und es ist Systemunabhaengiger). Wenn du natuerlich binaer kommunizierst, iss deine version richtig. Fuer Ethernet gilt das gleiche um so mehr Also, wer schreibt die daten??? Iss das nen PC, nen embedded Controller? Intel, Motorla Format = Swap japp, intel zu motorola musst swappen.
Da du keine einzelnen bits extrahierst, intressiert dich nur die Byte-Reihenfolge. Die frage ist, was du als Standard nimmst. Intel ist LSB, Motorola MSB, die 'Standardisierte' network byte order ist MSB hasst du auf deinem embedded system network libs zur verfuegung.
Htons htonl und co? Damit sollte das schnell und portabel gehen. Bleibt noch die frage ob der aufbau der floats auf deinen beiden Systemen gleich ist. Aber das solltest ueber tests recht fix rausbekommen.