Pointers and Function-Arguments
In C, function arguments are passed only by value
This means that a variable that is used as an argument at a function call will always retain its value when the function returns to the caller
By using pointers as function arguments this restriction is overcome (Re. Swap function)
Example:void Swap(int *a,int *b){ int t = *a; *a = *b; *b = t; }int i = 3, j = 4;Swap(&i,&j);
The call to Swap() is a call by reference
In both cases (Swap with/without pointers) a and b are local variables, and are initialized to the values of the function’s arguments.