Hallo ! Folgende Sache... Ich habe einen Wert definiert int err = -1; jetzt möchte ich diesen Wert ausgeben bzw. über meine serielle Schnittstelle übertragen. Jetzt bekomme ich zur Zeit als Ausgabewert FF dargestellt. Mmmh, wie bekomme ich denn wirklich ne -1 als Ausgabe ? Vermutlich muss ich zwei Zeichen übertragen, das Minus und die Eins ? Oder gibt es ne andere Lösung ? Danke vorab !
Im Prinzip ist beides richtig; 0xFF ist -1 (sofern der Datentyp int8_t verwendet wird). Eine Klartextdarstellung besteht, wie Du sehr richtig erkannt hast, aus mehreren Zeichen, dem '-' (0x2D) und der '1' (0x31). Wenn Du tatsächlich einen int auf die serielle Schnittstelle ausgeben würdest, würdest Du übrigens 0xFF 0xFF übertragen bekommen, da ein int größer ist als ein Byte (sizeof (int) != 1).
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.