1) Plz explain these complex declarations(from K&R).--
char(* (*f())[]) () // f : a function returning pointer to array[] of pointer to function returning char.
char(* (*x[3])()) [5] // x: array[3] of pointer to function returning pointer to array[3] of char.
The one line explanations which r given as comment were given in K&R but i couldnt understand them.
Do u know some links to tutorial of these kind of complex declarations?
2) Is there any special reason of- Why most C compilers include most of the header files implicitly, but in C++ we have to include them explicitly?
3) Can a global variable in C be declared anywhere in the program(outside all functions)?
ex-
int i;
main()
{
/*body*/
}
int j;
test()
{
/*body*/
}
int k;
Is this code valid according to C standards?
4) Is the value of NULL=0 according to C/C++ standard?