Find out the correct statement for the following program.
#include "stdio.h" int * gPtr; int main() { int * lPtr = NULL; if (gPtr == lPtr) { printf ( "Equal!" ); } else { printf ( "Not Equal" ); } return 0; } |
(A) It’ll always print Equal.
(B) It’ll always print Not Equal.
(C) Since gPtr isn’t initialized in the program, it’ll print sometimes Equal and at other times Not Equal.
Answer: (A)
Explanation: It should be noted that global variables such gPtr (which is a global pointer to int) are initialized to ZERO. That’s why gPtr (which is a global pointer and initialized implicitly) and lPtr (which a is local pointer and initialized explicitly) would have same value i.e. correct answer is a.
Quiz of this Question
Attention reader! Don’t stop learning now. Get hold of all the important C++ Foundation and STL concepts with the C++ Foundation and STL courses at a student-friendly price and become industry ready.