This program output will solve the doubt related to f(&i,j) working:
#include <stdio.h>
void f (int * p, int m) {
m = m + 5;
printf("m =%d",m);
*p = *p + m;
printf(" *p =%d",*p);
return;
}
void main () {
int i=5, j=10;
f (&i, j);
printf("\ni & j value after call i=%d j=%d ",i,j);
printf ("\nlast output i+j=%d", i+j);
}