Que doit retourner la fonction main() en C++ : void, int ou autre chose ?
Bonjour à tous ! J'ai commencé à apprendre le C++ récemment, et je suis confus au sujet de la fonction `main()`. Dans différentes sources, j'ai vu différentes déclarations : parfois `int main()`, parfois `void main()`, et même parfois `main()` sans spécifier le type. J'ai essayé d'écrire un programme simple :
```cpp
#include
using namespace std;
void main() {
cout << "Hello, world!" << endl;
}
```
Dans Visual Studio, cela s'est compilé et a même fonctionné, mais avec un autre compilateur (g++), cela a généré une erreur : `'::main' must return 'int'`. Pourquoi cela ? Que doit réellement retourner `main()` ? Et dois-je retourner quelque chose à la fin si j'écris `int main()` ? Cela fonctionnera-t-il si je n'écris rien dans `return` ? Et une autre question : que retourne exactement `main()` et à qui cela sert-il ? Expliquez-moi, s'il vous plaît, comme à un débutant.