すみません。うんkに毛が生えたレベルの質問なのですが、
int main()
{
return 0;
}

のreturn 0;の必要性がイマイチわからないです。あるサイトではこれがないとコパイル通らないそうですが、通りました。
例えば例外発生したときにそこでプログラムがとまってメモリを食っちゃうのを阻止する感じでしょうか