Predict the output of the below program:
#include <stdio.h> int main()
{ printf (\"%c \", 5[\"GeeksQuiz\"]);
return 0;
} |
(A)
Compile-time error
(B)
Runtime error
(C)
Q
(D)
s
Answer: (C)
Explanation:
The crux of the program lies in the expression: 5[\”GeeksQuiz\”] This expression is broken down by the compiler as: *(5 + \”GeeksQuiz\”). Adding 5 to the base address of the string increments the pointer(lets say a pointer was pointing to the start(G) of the string initially) to point to Q. Applying value-of operator gives the character at the location pointed to by the pointer i.e. Q.
Quiz of this Question
Please comment below if you find anything wrong in the above post