syntax of main in C/C++ language

In C/C++ language, main function comes in different flavors as shown below: int main(); int main(int argc, char **argv); int main(int argc, char **argv, char **envp); int main(int argc, char **argv, char **envp, char **apple); What is the signature of main specified in the language standard ?