main: inicio de programa
Una función especial denominada main es el punto inicial de ejecución para todos los programas de C y C++. Si escribe código que cumple el modelo de programación de Unicode, puede utilizar wmain, que es la versión con caracteres anchos de main.
El compilador no predefine la función main. Debe proporcionarse en el texto del programa.
La sintaxis de declaración de main es
int main();
u opcionalmente
int main(int argc, char *argv[], char *envp[]);
Específicos de Microsoft
La sintaxis de declaración de wmain es la siguiente:
int wmain( );
u opcionalmente
int wmain(int argc, wchar_t *argv[], wchar_t *envp[]);
También puede utilizar _tmain, que se define en TCHAR.h. _tmain se resuelve en main a menos que se defina _UNICODE. En ese caso, _tmain se resuelve en wmain.
De forma alternativa, se pueden declarar que las funciones main y wmain devuelvan void (ningún valor devuelto). Si declara que main o wmain devuelvan void, no se puede devolver un código de salida al proceso primario o al sistema operativo mediante una instrucción return. Para devolver un código de salida cuando main o wmain se declaran como void, debe utilizar la función exit.
FIN de Específicos de Microsoft
El lenguaje define los tipos argc y argv. Los nombres argc, argv y envp son tradicionales, pero no los requiere el compilador. Para obtener más información y un ejemplo, vea Definiciones de argumentos.