Friday, February 15, 2013

Predict the output or error(s) for the following


Predict the output or error(s) for the following

main()
{
extern int i;
i=20;
printf("%d",i);
}
Answer:



Linker Error : Undefined symbol '_i'
Explanation:
extern storage class in the following declaration,
extern int i; specifies to the compiler that the memory for i is allocated in some other program
and that address will be given to the current program at the time of linking. But
linker finds that no other variable of name i is available in any other program with
memory space allocated for it. Hence a linker error has occurred .

No comments:

Post a Comment