【解析】函数的两个参数 p1 和 p2 都是指针类型,分别指向两个 int 类型的数据,我们假设分别是 a 和 b,在函数内部,*p1 其实就是 a,*p2 就是 b。 首先将 a 的值赋值给 p,然后将 a 的值修改为 b 的值,最后将 p 的值(一开始 a 的值)赋值给 b。这样就交换了 a 和 b 两个数的值。
#include <iostream>
using namespace std;
void abc(int *p1,int *p2){
int p;
p=*p1;
*p1=*p2;
*p2=p;
}
int main(){
int a=5;
int b=10;
int *p1=&a;
int *p2=&b;
abc(p1,p2);
cout<<*p1<<endl;
cout<<*p2<<endl;
return 0;
}
#include<iostream> using namespace std; void abc(int *p1,int *p2){ int p; p=*p1; *p1=*p2; *p2=p; } int main(){ int a=1,b=2; int *p1=&a; int *p2=&b; abc(p1,p2); cout<<*p1<<*p2;
【函数和指针知识点讲解】
更多C++基础专业知识讲解,点击链接即可查看
https://www.nowcoder.com/link/zxyl-cpp48