Thanks for that answer.But still there is a problem
I am using an old compiler and let us forget that.
The first example gives a compilation error as "initializer element is not constant". I assume that it is because of the variant return value of
printf function. If that is the case, why is it not a compilation error in the second example? The reason behind my assumption is that, if I give
int i =10;
main()
{}
there is no compilation error.
I do agree that we need a valid invocation and not a global declarion. I just came across this code from our forum. I was just trying to find out the answer to this. But quite confusing.......