#include int f_by_value(int arg) { int calc_res = 0; calc_res = arg+1; return calc_res; } void f_by_reference(int *arg_address) { int calc_res; calc_res = *arg_address+1; *arg_address = calc_res; } void main() { int i; int return_value; /* inialize values */ i = 10; return_value = 999; printf(" before f_by_value(): (i, return_value) is (%d, %d)\n", i, return_value); /* call by value */ return_value = f_by_value(i); printf(" after f_by_value(): (i, return_value) is (%d, %d)\n\n", i, return_value); /* re-inialize values */ i = 10; return_value = 999; printf(" before f_by_reference(): (i, return_value) is (%d, %d)\n", i, return_value); /* call by reference */ f_by_reference(&i); printf(" after f_by_reference(): (i, return_value) is (%d, %d)\n", i, return_value); }