¿Qué debe devolver la función main() en C++: void, int o algo más?
¡Hola a todos! Empecé a estudiar C++ recientemente y tengo confusión con la función `main()`. En diferentes fuentes he visto distintas declaraciones: en algunos lugares escriben `int main()`, en otros `void main()`, y a veces incluso `main()` sin especificar el tipo. Intenté escribir un programa simple:
```cpp
#include
using namespace std;
void main() {
cout << "Hello, world!" << endl;
}
```
En Visual Studio esto se compiló e incluso funcionó, pero en otro compilador (g++) dio un error: `'::main' must return 'int'`. ¿Por qué ocurre esto? ¿Qué debería devolver realmente `main()`? ¿Y es necesario devolver algo al final si escribo `int main()`? ¿Funcionará si no escribo nada en `return`? Y otra pregunta: ¿qué devuelve exactamente `main()` y quién lo necesita? Explíquenme, por favor, para principiante, cómo escribir correctamente el punto de entrada en un programa en C++.
<<>>
Respuesta correcta: main() siempre debe devolver int
En el estándar de C++ (y C) está claramente dicho: la función main() d