Skip to content
Related Articles

Related Articles

C | Pointer Basics | Question 1
  • Difficulty Level : Basic
  • Last Updated : 04 Feb, 2013

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.

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.

My Personal Notes arrow_drop_up
Recommended Articles
Page :