Informationen zur Funktion main()
Nach oben zu Funktion main() - Index
Alle in C und C++ geschriebenen Programme müssen über eine Startfunktion verfügen:
- Konsolenbasierte Programme rufen beim Programmstart die Funktion
mainund für UNICODE-Programme die Funktionwmainauf. - Windows GUI-Programme rufen beim Programmstart die Funktion
Mainund für UNICODE-Programme die FunktionwWinMainauf.
Wo die Startfunktion im Programm definiert wird, ist eine Frage der persönlichen Präferenz. Manche Programmierer definieren die Funktion main am Anfang der Datei, andere am Ende. Unabhängig von der Position sind stets folgende Punkte bei der Funktion main zu beachten.
- _TCHAR-Zuordnung (für UnicodeString, _tMain und _tWinMain)
- Argumente der Funktion main()
- Argumente mit Platzhalterzeichen
- Verwenden von -p (Pascal-Aufrufkonventionen)
- Rückgabewert von main()
Für unsere C++-Compiler, die durch Clang erweitert wurden, (BCC64, BCCIOSARM und BCCAARM) müssen nun Deklarationen in C++ einen Typ haben. Deshalb wird jetzt beispielsweise ein Fehler ausgegeben, wenn WinMain wie im folgenden Beispiel keinen Rückgabetyp hat:
WINAPI _tWinMain(HINSTANCE, HINSTANCE, LPTSTR, int)
{
...
}
Der obige Code erzeugt nun den folgenden Fehler:
- C++ requires a type specifier for all declarations
Aktualisieren Sie den Code folgendermaßen, um diesen Fehler zu beheben:
int WINAPI _tWinMain(HINSTANCE, HINSTANCE, LPTSTR, int)
{
...
}