'FALSE': nichtdeklarierter Bezeichner???
-
GPC schrieb:
Beim kompilieren habe ich den Fehler :" 'FALSE': nichtdeklarierter Bezeichner " getroffen.
Das liegt daran dass C noch kein true/false kennt. Man kann's aber so simulieren:
//Entweder: #define FALSE 0 #define TRUE 1 //oder: enum {FALSE, TRUE};
Es gibt alte C Compiler, die keinen eingebauten bool-Typ mit dazugehörigen true und false hatten, aber BOOL war schon immer ein typedef von Microsoft und ließe sich durch Inkludieren von windows.h erhalten, was aber in diesem Fall nicht sinnvoll wäre.
-
probiers mal waenn du dem gcc folgendes flag hinzufuegst -std=c99
dann kannst auch sowas wie for(int i = 0; i < irgendwas; i++) hernehmen
-
Hallo!
Kurze Frage zu deinem Code.
a) Ist store eine globale Variable char store[10] ??
b) Was möchtest du mit dem Code bezwecken ??
-
--linuxuser-- schrieb:
probiers mal waenn du dem gcc folgendes flag hinzufuegst -std=c99
dann kannst auch sowas wie for(int i = 0; i < irgendwas; i++) hernehmenKannst du mal näher erläutern, was du damit meinst?
-
masterofx32 schrieb:
--linuxuser-- schrieb:
probiers mal waenn du dem gcc folgendes flag hinzufuegst -std=c99
dann kannst auch sowas wie for(int i = 0; i < irgendwas; i++) hernehmenKannst du mal näher erläutern, was du damit meinst?
masterofx32 schrieb:
--linuxuser-- schrieb:
probiers mal waenn du dem gcc folgendes flag hinzufuegst -std=c99
dann kannst auch sowas wie for(int i = 0; i < irgendwas; i++) hernehmenKannst du mal näher erläutern, was du damit meinst?
tja du wirst dein programm ja sicher so kompilieren:
gcc -o binaryname -o namerDerSourceDatei.c
und dann fuegst du folgendes hinzu:
gcc -o binaryname -o namerDerSourceDatei.c -std=c99
damit zwingst du den gcc den code nach ansi c 99 standart zu kompilieren
-
tja du wirst dein programm ja sicher so kompilieren:
gcc -o binaryname -o namerDerSourceDatei.c
und dann fuegst du folgendes hinzu:
gcc -o binaryname -o namerDerSourceDatei.c -std=c99
damit zwingst du den gcc den code nach ansi c 99 stan**** zu kompilieren
Ich kompiliere gar nichts.
Es ging hauptsächlich um diese Aussage:
dann kannst auch sowas wie for(int i = 0; i < irgendwas; i++) hernehmen
Was hast das mit dem Problem und dem C99-Standard zu tun?
-
Fast nichts, der Punkt ist nur dass es in C89 nicht möglich war eine Variable mitten in einer Funktion zu deklarieren, man musste sie am Anfang der Funktion deklarieren. In C99 wurde das abgeschafft.
-
GPC schrieb:
Fast nichts, der Punkt ist nur dass es in C89 nicht möglich war eine Variable mitten in einer Funktion zu deklarieren, man musste sie am Anfang der Funktion deklarieren. In C99 wurde das abgeschafft.
Ach so, darauf war das bezogen. Für mich sieht es aber so aus, als wenn er es in seinem Code von Anfang an so gemacht hat.
-
Eh, hast recht. Hat sich im Laufe der Diskussion verloren
-
GPC schrieb:
Das liegt daran dass C noch kein true/false kennt.
Seltsam, dass sich sowas noch nicht rumgesprochen hat. Der aktuelle C Standard ist ja auch schon ein paar Jährchen alt.
stdbool.h