uint8_t nach int

OP #4445261
Lesenswert?
• ▲
▼
Hallo

habe jetzt wegen dem uint8_t Datentyp von AVR recherchiert und wie ich 
verstanden habe, man kann ihn ohne weiteres in char und int 
konvertieren. Stimmt das so? habe leider keine Möglichkeit zur Hand es 
nachzuprüfen. uint8_t ist ja AVR-Spezifischer universeller Datentyp und 
wird ja unter anderem auch bei ADC Umwandlung verwendet.

Z.B. uint8_t wert = 0b11111111

kann ich dann einfach zuweisen

int a = (int) wert; // a = 255

oder

char a = (char) wert; // a = 0xFF

?
danke im Voraus
#4445375
Lesenswert?
• ▲
▼
Hallo,

Alex S. schrieb:
> uint8_t ist ja AVR-Spezifischer universeller Datentyp

eher im Gegenteil. Es ist ein allgemein definierter Datentyp unsignet 
int mit 8 Bit.

Spätestens bei unsigned int und uint16_t wird der Unterschied 
entscheidend:
Auf dem AVR ist unsigned int 16 Bit, auf dem ESP8266 z.B. aber 32Bit, 
weil es ein 32 Bitter ist.

uint16_t ist dagegen auf beiden immer 16 Bit.

Die "Kleinigkeit" hat mich schon genervt, als ich AVR-Code auf den ESP 
gworfen und nicht daran gedacht habe.

Gruß aus Berlin
Michael

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

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.