martin753 hat geschrieben:Hallo proggen.org,
ich habe diese Seite hier gestern entdeckt, habe mir alles in Ruhe durchgelesen.
Herzlich Willkommen! Xin wird dir, wenn er das hier liest folgendes ans Herz legen:
User-Vorstellungen
martin753 hat geschrieben:
Und dann war ich der Meinung das ich mit der Programmiersprache C beginne.
Mir hat alles so viel Spaß gemacht, ich habe probiert und alles und ich fand es toll.
Das ist schön^^
martin753 hat geschrieben:
Das obere gebe ich bei CodeBlock ein und bei meiner Konsole gebe ich gcc while.c (dieses Kapitel hab ich nach while in meinem Ordner genannt) ein.
Dann kommt folgender Fehler:
error: 'for' loop initial declarations are only allowed in C99 mode
note: use option -std=c99 or -std=gnu99 to compile your code
Bitte helfen, ich will hier weiter lernen, das macht mir riesen Spaß

Dankeschön im vorraus.
Martin
C unterstützt von Haus aus keine Initialisierung im for-loop Header.
Also darfst du keine Integer im Kopf deiner Schleife "erstellen". Wenn du C++ benutzt oder C Versionen ab 1999 ist dies jedoch gestattet.
Speichere deine Datei als *.cpp (Code-Blocks sollte sie dann als g++ statt gcc compilen) oder Initialisiere "wert" am Anfang der Funktion und deklariere nur im for-loop.
Also "int wert;" am Anfang und im for-loop nur "wert = 1"
Mal eine Frage: Ist dir folgendes als Anfänger schlüssig:
Code: Alles auswählen
if( !(wert & 1))
{
printf( "Dieser Wert ist durch zwei teilbar." );
}
?
€dit: Es kann auch sein, das Code-Blocks die alte C Version annimmt, da du den alten main-header benutzt. int main(void) ist veraltet. Heutzutage benutzt man int main(int argc, char **argv). Dann kann man direkt Parameter beim Aufrufen übergeben. Dazu wirst du vermutlich noch mehr lesen können im Wiki. Bin mir aber nicht sicher, ob das wirklich der Grund ist.
€dit²: Ich sehe gerade, du tippst selber gcc while.c ein. Du kannst auch einfach g++ while.c schreiben oder gcc while.c -std=c99. Damit sagst du dem Compiler, du würdest gerne C++ bzw. die C Version c99 verwenden.