Skip to content
Related Articles

Related Articles

Improve Article

GATE | GATE CS 2010 | Question 10

  • Last Updated : 28 Jun, 2021

What does the following program print?




#include
void f(int *p, int *q)
{
  p = q;
 *p = 2;
}
int i = 0, j = 1;
int main()
{
  f(&i, &j);
  printf("%d %d \n", i, j);
  getchar();
  return 0;
}

(A) 2 2
(B) 2 1
(C) 0 1
(D) 0 2


Answer: (D)

Explanation: See below comments for explanation.

/* p points to i and q points to j */
void f(int *p, int *q)
{
  p = q;    /* p also points to j now */
 *p = 2;   /* Value of j is changed to 2 now */
}


Quiz of this Question

Attention reader! Don’t stop learning now.  Practice GATE exam well before the actual exam with the subject-wise and overall quizzes available in GATE Test Series Course.

Learn all GATE CS concepts with Free Live Classes on our youtube channel.

My Personal Notes arrow_drop_up
Recommended Articles
Page :