int a=0; int up(int *s) { s=s+1; return *s; } up(&a); // and A is never changed !