首页 > 代码库 > C++函数传递指向指针的指针的应用
C++函数传递指向指针的指针的应用
传递指向指针的引用
假设我们想编写一个与前面交换两个整数的 swap 类似的函数,实现两个指
针的交换。已知需用 * 定义指针,用 & 定义引用。现在,问题在于如何将这两
个操作符结合起来以获得指向指针的引用。这里给出一个例子:
// swap values of two pointers to int
void ptrswap(int *&v1, int *&v2)
{
int *tmp = v2;
v2 = v1;
v1 = tmp;
}
形参
int *&v1
的定义应从右至左理解:v1 是一个引用,与指向 int 型对象的指针相关联。也
就是说,v1 只是传递进 ptrswap 函数的任意指针的别名。
1 #include<iostream> 2 3 using namespace std; 4 5 void change_ptr(int *&p1,int *&p2) 6 { 7 int *temp; 8 temp=p1; 9 p1=p2;10 p2=temp;11 }12 int main()13 {14 int a1=10;15 int a2=12;16 int *p1=&a1,*p2=&a2;17 cout<<"p1="<<p1<<endl;18 cout<<"p2="<<p2<<endl;19 change_ptr(p1,p2);20 cout<<"p1="<<p1<<endl;21 cout<<"p2="<<p2<<endl;22 23 system("pause");24 return 1;25 }
C++函数传递指向指针的指针的应用
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。