C | Pointer Basics | Question 1
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.
Please Login to comment...