int to char ? Geht das?

Gast #526283
Hi
Ich habe 7 kleine Zählerwerte von denen keiner größer als 100 ist, wenn 
ich ihn übertragen will. Bis dahin können sie aber schnell auch mal 
20000 werden, darum sind sie als int definiert. Zur Übertragung ggf. per 
CAN wäre es aber sehr viel einfacher, wenn ich aus den int chars machen 
könnte. Beim CAN würden dann alle in eine einzige Nachricht passen. Aber 
wie wandelt man ein 2byte int in ein 1byte char um, ohne das der 
Compiler meckert?
Gast #526288
1
unsigned int var = 0xABCD;
2

3
unsigned char upper = 0x00;
4
unsigned char lower = 0x00;
5

6
upper = var / 0x100;    //ist jetzt 0xAB
7
lower = var % 0x100;    //ist jetzt 0xCD



pumpkin

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 19 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.