In section 3.6.1.2 of both C++ Standard 1998 and 2003 editions,
An implementation shall not predefine the main function. This function shall not be ov
As far as parameters are concern ,it allows
int main()
int main(int argc , char * argv[])
int main(int argc , char * argv[] , char * envr[])
But as per standard return type should be int for consistency purpose.