Cele mai bune forme sunt: int main(void) si int main(int argc, char **argv). Cat despre int main() este o forma mai veche, care indica ca functia principala main are un numar necunoscut de argumente.
In multe carti vei gasi void main(), aceasta forma indica faptul ca functia ta nu va returna nicio valoare.
Cam astea sunt variantele.