在函数中改变指针的地址

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 }
posted @ 2011-04-06 08:40  bamb00  阅读(591)  评论(0编辑  收藏  举报