I wanted some information on the return values :
1. Is it always necessary for a return value of main() to be an integer.
2. What happens if the return value of main() is not integer.
3. When a return value other than 0 is returned - does it always indicate that an error has occurred ?
4. If the answer to '3' is yes then what steps does the OS take ?
EDIT: Misspelled Return but can't seem to edit thread name :(