在函数中改变指针的地址
1 void f(int **p)//传递过来的是指针的地址,因而参数是指针的指针
2 {
3 (*p)++;
4 }
5
6 int main()
7 {
8 int a=4;
9 int *p=&a;
10 printf("%x\n",p);
11 f(&p); //传递指针的地址
12 printf("%x",p);
13
14 }
或者:
1 void f(int *&p)//相当于传递指针的引用
2 {
3 p++;
4 }
5
6 int main()
7 {
8 int a=4;
9 int *p=&a;
10 printf("%x\n",p);
11 f(p);
12 printf("%x",p);
13
14 }