DaniWeb IT Discussion Community

DaniWeb IT Discussion Community (http://www.daniweb.com/forums/index.php)
-   Assembly (http://www.daniweb.com/forums/forum125.html)
-   -   wat does this do (http://www.daniweb.com/forums/thread157876.html)

jbennet Nov 30th, 2008 7:55 pm
Re: wat does this do
 
The main method is often misunderstood.

In C89, main() on its own is acceptable, but C99 only allows for either (The second one is for command line paramaters):

Quote:

int main ( void )
int main ( int argc, char *argv[] )
In C89, main() MUST return something but C99 says if a return statement is absent, then 0 is implied (sucess). I do however think this has been removed in newer standards. This is as when C was new, void did not exist and the machines of the time required that the program return an integer value for sucess or not. Anything other that 0 (sucess) was logged.

In C++ there is allowed

Quote:

int main ( int argc, char *argv[] )
int main ()
Note that int main() is NOT void. The empty brackets do NOT indicate no paramaters, they in fact indicate an unlimited number of paramaters.

The ISO C Standard (ISO/IEC 9899:1999) says it is also illegal for C++ to have a return type of void. The return type should be an integer and the function should return 0 or EXIT_SUCCESS; at the end. A return type of void does NOT mean it returns nothing, it just means it returns a junk value which will pribably not be 0.

I do hope thats right, that just my understanding from my notes.

carson myers Dec 8th, 2008 1:06 pm
Re: wat does this do
 
ahh, I see


All times are GMT -4. The time now is 7:26 pm.

Forum system based on vBulletin Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
©2003 - 2009 DaniWeb® LLC