GATE | GATE-CS-2014-(Set-1) | Question 19

Consider the following program in C language:

filter_none

edit
close

play_arrow

link
brightness_4
code

#include <stdio.h>
main()
{
    int i;
    int *pi = &i;
    scanf("%d", pi);
    printf("%d\n", i+5);
}

chevron_right


Which one of the following statements is TRUE?

(A) Compilation fails.
(B) Execution results in a run-time error.
(C) On execution, the value printed is 5 more than the address of variable i.
(D) On execution, the value printed is 5 more than the integer value entered.


Answer: (D)

Explanation: There is no problem in the program as pi points to a valid location.

Also, in scanf() we pass address of a variable and pi is an address.

Quiz of this Question

My Personal Notes arrow_drop_up