Einzelnen Beitrag anzeigen
Ungelesen 25.11.14, 13:15   #9
Odatas
Erfahrenes Mitglied
 
Registriert seit: Nov 2011
Beiträge: 648
Bedankt: 326
Odatas ist unten durch! | -158 Respekt PunkteOdatas ist unten durch! | -158 Respekt Punkte
Standard

Zitat:
Zitat von mrburns Beitrag anzeigen
main ist eine Funktion und brauch einen Rückgabetyp,
Zitat:
Ein Programm beginnt mit void main(void) , main() usw. – Dies entspricht nicht dem (C99)-Standard. Dort ist festgelegt, dass jedes Programm (sofern ihm keine Parameter übergeben werde) mit int main() oder int main(void) beginnen muss. Die Definition mit void main() bzw. void main(void) ist kein gültiges C, da der Standard vorschreibt, dass main einen Rückgabewert vom Typ int besitzen muss (auch wenn viele Compiler void dennoch akzeptieren). Die Definition mit main() war früher gültig, da beim Fehlen eines Rückgabetyps angenommen wurde, dass die Funktion int zurückliefert.
Du hast recht und man sollte sich auch immer das gültige C angewöhnen. Jedoch um verwirrungen bei Neuligen zu vermeiden muss man dazu sagen das eigentlich jeder Compiler auch void main() akzeptiert.

Also es geht auch, ist aber schlechter Programmierstyle deshalb gleich wieder vergessen und mit int main arbeiten.
Odatas ist offline   Mit Zitat antworten