编写函数交换两个int型指针所指向的值,调用并检查该函数,输出交换后的值。

来源:互联网 发布:免费视频剪辑软件 编辑:程序博客网 时间:2024/05/17 06:25

#include<iostream>
using namespace std;
void fun(int *&ip1,int *&ip2)
{
 int *temp=ip1;
 temp=ip2;
 ip2=ip1;
 ip1=temp;
}
int main()
{
 int a=12;
 int b=32;
 int *ipa=&a;
 int *ipb=&b;
 cout<<"Before swap:"<<*ipa<<" "<<*ipb<<'\n';
 cout<<ipa<<" "<<ipb<<'\n';
 cout<<a<<" "<<b<<'\n';
    fun(ipa,ipb);
 cout<<"After swap:"<<*ipa<<"   "<<*ipb<<'\n';
 cout<<ipa<<" "<<ipb<<'\n';
 cout<<a<<" "<<b<<'\n';
 return 0;
}
//问题:编写函数交换2个int型指针的值。
//前一个是交换指针所存放的存储地址,后一个是交换指针所指向的对象的值。

#include <iostream>
using namespace std;
void gcd(int *v1,int *v2)
{
 int temp=*v1;
 *v1=*v2;
 *v2=temp;
}

int main()
{
 int i,j;
 cin>>i>>j;
 int *ipa=&i;
 int *ipb=&j;
 cout<<*ipa<<"  "<<*ipb<<endl;
 cout<<ipa<<"  "<<ipb<<endl;
 cout<<i<<" "<<j<<endl;
 gcd(ipa,ipb);
 cout<<*ipa<<"  "<<*ipb<<endl;
 cout<<ipa<<"   "<<ipb<<endl;
 cout<<i<<" "<<j;
 return 0;

}