Functions
Pass By Value
C passes function arguments by value, so a parameter receives a copy.
Pass By Value
pass_by_value.c
#include <stdio.h>
void addOne(int value) {
value++;
printf("inside=%d\n", value);
}
int main(void) {
int original = ;
addOne(original);
printf("after=%d\n", original);
return 0;
}
#include <stdio.h>
void addOne(int value) {
value++;
printf("inside=%d\n", value);
}
int main(void) {
int original = ;
addOne(original);
printf("after=%d\n", original);
return 0;
}
#include <stdio.h>
void addOne(int value) {
value++;
printf("inside=%d\n", value);
}
int main(void) {
int original = ;
addOne(original);
printf("after=%d\n", original);
return 0;
}
copy
Changing a parameter does not change the caller's variable.
argument
The argument value is copied into the parameter when the function is called.