Forum: Compiler & IDEs Array länge mit einem #define vordefinieren


von Simon (Gast)


Lesenswert?

Wieso geht das nicht?
1
//header Datei
2
#define MAX_CMD_LENGTH 10;
3
4
// c Datei
5
char cmd[MAX_CMD_LENGTH];

Fehler:

 error: expected ']' before ';' token

von Peter II (Gast)


Lesenswert?

Simon schrieb:
> Wieso geht das nicht?

weil es falsch ist.

Der PreProzessor macht daraus:

char cmd[10;];

von Oliver (Gast)


Lesenswert?

define macht eine Textersetzung. Nicht mehr, aber auch nicht weniger. 
Mit ALLEN Zeichen, die da stehen.

Schreib dir also mal hin, was da ensteht...

Oliver

von Simon (Gast)


Lesenswert?

Ich idiot!

Niergends hier in dem code wird ein #define mit einem ; abgeschlossen.

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.