Avatar ·

Que doit retourner la fonction main() en C++ ? Valeurs de retour correctes

Bonjour, collègues ! Je viens de commencer à apprendre le C++ et j'ai une question fondamentale concernant la fonction `main()`. Dans différents exemples de code, je vois que `main()` est déclarée avec le type `int`, mais parfois je rencontre `void main()` ou même simplement `main()` sans type. Je suis complètement perdu.\n\nVoici quelques exemples que j'ai rencontrés :\n\n```cpp\n// Exemple 1\nvoid main() {\n // ...\n}\n\n// Exemple 2\nmain() {\n // ...\n}\n\n// Exemple 3\nint main() {\n // ...\n return 0;\n}\n\n// Exemple 4\nint main() {\n // ...\n return 1;\n}\n```\n\nMon compilateur (Visual Studio 2019) râle contre `void main()`, mais j'ai vu que cela est utilisé dans certains vieux livres. Et qu'en est-il de `return` ? J'ai lu quelque part que `return 0` signifie une terminaison réussie, et `return 1` une erreur. Mais que se passe-t-il si je ne retourne rien ?