| The C++ language definition requires that main return an int. To do otherwise is incorrect C++, but many compilers allow it for various reasons, such as tradition, backwards-compatibility and because allowing it extends the language in a way that doesn't affect any other part of it.
It is customary for the return value to indicate success, usually by returning zero, or to give an error code that can be used to debug. |