Forum: Mikrocontroller und Digitale Elektronik uint16_t i = '\x1234'; geht nicht?


von Thomas (Gast)


Lesenswert?

Hallo,
ich stehe gerade vor einen eigentlich einfachen Problem:
ich möchte den uint16_t i den wert von \x1234 zuweisen.

der Compiler ist aber der meinung das \x1234
 außerhalb des wertebereiches ist.


Warum? und wie Löse ich mein Problem?

Danke
von Peter II (Gast)


Lesenswert?

Thomas schrieb:
> \x1234

und was soll dads überhaupt sein - meinst du hex? dann schreibt man 
0x1234
von Johann L. (gjlayde) Benutzerseite


Lesenswert?

Das \x bezieht sich  nur auf einen char, nicht auf den ganzen Wert. 
Ergo:
1
uint16_t i = '\x12\x34';
und nicht durch die Forensoftware verwirren lassen, die das nicht der 
Semantik entsprechend darstellt. Oder in der üblicheren Schreibweise
1
uint16_t i = 0x1234;
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
Noch kein Account? Hier anmelden.