A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

立冬

初级黑马

  • 黑马币:18

  • 帖子:6

  • 精华:0

© 立冬 初级黑马   /  2014-9-23 10:48  /  1010 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

指针的调用   为什么我选择地址的交换,最后还是不行。   如果我一定要采用这种地址的交换。   能实现我的函数功能吗?
//输入2个数,从大到小输出。  现在只是交换了指针。并未对两个数进行交换。   不能通过改变形参,来改变实参的值??????
#include <iostream>
using namespace std;
int main ()
{
void swap(int *p1,int *p2);
int *pointer_1,*pointer_2,a,b;
cin>>a>>b;
pointer_1=&a;
pointer_2=&b;
if(a<b) swap(pointer_1,pointer_2);
cout<<"max="<<a<<"min="<<b<<endl;
system("pause");
return 0;
}
void swap(int *p1,int *p2)
{
        int *p;
        p=p1;
        p1=p2;
        p2=p;
/*int p;
        p=*p1;
        *p1=*p2;
        *p2=*p1;
*/
}

5 个回复

倒序浏览
不能通过改变形参,来改变实参的值??????  是这个解释吗?
回复 使用道具 举报
指针。。。。
回复 使用道具 举报
{:2_31:}{:2_31:}{:2_31:}{:2_31:}{:2_31:}{:2_31:}
回复 使用道具 举报
{:2_34:}{:2_34:}{:2_34:}{:2_34:}{:2_34:}{:2_34:}{:2_34:}{:2_34:}{:2_34:}
回复 使用道具 举报
路过学习~~~~
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马