Possible Duplicate:
Alternate C syntax for function declaration use cases
I see this very different definition of main() in an old C-program. (It does compile, with gcc)
main(argc, argv)
int argc;
char *argv[];
{
...
...
}
What kind of variables are being declared and why are they being done before the beginning of the function brace?
This is old style of function definition in C. This non-prototype style is marked as obsolescent in the C Standard and should not be used.
And omitting the return type (implicitly
int) is no longer permitted in C.