📘 Lesson  ·  Lesson 55

Call by Value vs Reference

Call by Value vs Reference

Two Ways to Pass Arguments

💡 Note

Call by value passes a copy (original unchanged). Call by reference passes the address (original can change).

Call by Value

C
void change(int x) { x = 100; }
int main() {
    int a = 5;
    change(a);
    printf("%d", a);   // 5 (unchanged)
}
Output:
5

Call by Reference

C
void change(int *x) { *x = 100; }
int main() {
    int a = 5;
    change(&a);
    printf("%d", a);   // 100 (changed)
}
Output:
100

Summary

  • Call by value copies the data; call by reference passes the address so changes persist.

Arguments Pass करने के दो तरीके

💡 Note

Call by value copy भेजता है (original unchanged)। Call by reference address भेजता है (original बदल सकता है)।

Call by Value

C
void change(int x) { x = 100; }
int main() {
    int a = 5;
    change(a);
    printf("%d", a);   // 5 (unchanged)
}
Output:
5

Call by Reference

C
void change(int *x) { *x = 100; }
int main() {
    int a = 5;
    change(&a);
    printf("%d", a);   // 100 (changed)
}
Output:
100

सारांश

  • Call by value data copy करता; call by reference address भेजता है तो changes रहते हैं।
← Back to C Tutorial
🔗

Share this topic with a friend

यह topic किसी दोस्त को भेजें

Found it useful? Send it to a classmate learning the same thing.

अच्छा लगा? जो दोस्त यही सीख रहा है, उसे भेज दीजिए।

\n