Forum: Mikrocontroller und Digitale Elektronik c rom pointer


von xyz (Gast)


Lesenswert?

Hallo,
kurze Frage zu C:

const char* message = "UUU"; -> OK

warum geht folgendes nicht,
bzw. wie kann man die Werte dem Compiler als char anbieten?

const char* message = { 0x55,0x55,0x55 };
-> Fehler dah der Compiler von int ausgeht

danke für Hilfe

von Sven P. (Gast)


Lesenswert?

xyz wrote:
> -> Fehler dah der Compiler von int ausgeht
Welcher Compiler? Welche Fehlermeldung? Welches System? Forenregeln.
1
const char bummsfallera[] = {1, 2, 3, 4, 5};

von xyz (Gast)


Lesenswert?

Sorry,

C30 für 24erPICs
Fehler: initialization makes pointer from integer without cast

const char const char bummsfallera[] = {1, 2, 3, 4, 5};

bummsfallera -> kein const pointer

von Sven P. (Gast)


Lesenswert?

xyz wrote:
> C30 für 24erPICs
> Fehler: initialization makes pointer from integer without cast
Jo, das läuft aufs gleiche drauf raus:
1
const char* message = { 0x55,0x55,0x55 };
2
const char *message = 0x55;

> const char const char bummsfallera[] = {1, 2, 3, 4, 5};
Jetzt sind sowohl der Zeiger selbst als auch die Daten, auf die er 
zeigt, konstant.

> bummsfallera -> kein const pointer
>
1
> const char* message = "UUU"; -> OK
2
>
"message --> auch kein const pointer"


Entweder du machst es in der Vektorschreibweise, wie ichs dir gezeigt 
hab, oder du gibst die Werte im String an ("\0x55\0x.....").

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.