Open In App

C | Pointer Basics | Question 1

Like Article
Like
Save Article
Save
Share
Report issue
Report

What is the output of following program?




# include <stdio.h>
void fun(int x)
{
    x = 30;
}
  
int main()
{
  int y = 20;
  fun(y);
  printf("%d", y);
  return 0;
}


(A) 30
(B) 20
(C) Compiler Error
(D) Runtime Error


Answer: (B)

Explanation: Parameters are always passed by value in C. Therefore, in the above code, value of y is not modified using the function fun(). So how do we modify the value of a local variable of a function inside another function. Pointer is the solution to such problems. Using pointers, we can modify a local variable of a function inside another function. See the next question.
Note that everything is passed by value in C. We only get the effect of pass by reference using pointers.


Last Updated : 04 Feb, 2013
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads