(Main must return int) in c++?
Ich verstehe das Problem nicht.
Warum muss ich int zurückgeben und was muss ich machen?
#include "vektor3.h"
int main(int argc, char *argv[]) { # main must return int
Vektor3 v1 = Vektor3(1, 2, 5);
v1.printVektor();
return 0;
}
2 Antworten
Warum muss ich int zurückgeben und was muss ich machen?
Den Int, den du zurückgibst, ist der Statuscode beim schließen. 0 ist quasi alles okay, -1 abgebrochen und so weiter. Da gibt's Listen zu oder kannst es selbst definieren.
Im Code fallen mir direkt zwei Sachen auf;
return = 0
};
return 0; - Return ist ein Keyword, keine Variable. Es fehlt ebenfalls das Semikolon.
Das Semikolon am Ende des Körpers darf auch dort nicht sein.
Dann wird da noch etwas falsch sein und es fehlt etwas. Hast du das Semikolon am Ende auch entfernt?
Du returnst den Int am Schluss. Wahrscheinlich hast du zu viele Klammern oder sonst was.
das Semikolon habe ich entfernt, aber vielleicht hat es auch was mit dem Programm zutun? am Ende der Fehlanzeige steht gcc was aber "C" ist und nicht g++
https://stackoverflow.com/questions/3178342/compiling-a-c-program-with-gcc
GCC kann auch C++ kompilieren.
Aber wie gesagt, da fehlt einiges, was wir nicht wissen.
Habe VS neugestartet und jetzt ist der Fehler weg. Funktionieren tut es trotzdem nicht :D, aber das ist ein anderes Problem mit dem Compiler denenoch Danke
return = 0
Hier weist du einer nicht deklarierten Variable namens "return" den Wert 0 zu, was natürlich weder funktioniert noch den Rückgabewert der Funktion beeinflusst.
Warum muss ich int zurückgeben und was muss ich machen?
Weil die Funktion so deklariert ist, dass sie einen int-Wert zurückgeben muss.
Es heißt
return 0;
Das Semikolon nach dem Funktionsblock kannst du dir dafür sparen.
Ich habe es geändert, aber trotzdem steht dort als Fehler "::main must return int (gcc)"