*Blink Blink* What's wrong with void main?
About everything; the exit() function implementation calls main(...) and expects
a return value; an int. I main() happens to be void or whatever, popping the return
value in a stack based machine may corrupt the execution stack.
No matter what Microsoft wants you to believe; they're wrong; the return type
of main() is int, int and just int; not void or whatever. Both the C and C++ Standards
state so in a 'shall' clause which means that it *must* be done so in order to be
compliant with the standard. Everyone who does otherwise hasn't understood
what these Standards are about, e.g. Microsoft.
kind regards,
Jos