Is that because of the 'void'?
In my first programming class (years back) they taught us to use void. It wasn't until several semesters later that I heard somewhere along the way that 'int' is considered better. Can't say I recall the reason though, but I'd be curious to hear if you have an explanation.
Yes it's because of the void, main should be written in C and C++
int main(int argc, char **argp)
{
}
or alternitively in C++ only
int main()
{
}
And the reason is because that is what the standard specifies (also the code alling main is expecting a return value).