void main和int最主要的区别在于有无返回值。
由void main定义的函数不需要返回值,int main定义的函数必须有返回值,且返回值的数据类型由int定义。通常int main的可移植性高于void main,后者更容易在其他编译器中报错。