标题:c语言中关于调用函数里指针互换,主函数对应指针变量是否也互换?
只看楼主
分i飞
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2017-8-6
结帖率:0
已结贴  问题点数:20 回复次数:7 
c语言中关于调用函数里指针互换,主函数对应指针变量是否也互换?
如果否,请给下解释。
搜索更多相关主题的帖子: 指针 互换 对应 变量 是否 
2017-08-07 07:47
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:432
帖 子:10064
专家分:41463
注 册:2014-5-20
得分:7 
是两个指针的地址互换?
2017-08-07 08:20
分i飞
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2017-8-6
得分:0 
就是两个指针互换
2017-08-07 08:32
分i飞
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2017-8-6
得分:0 
2017-08-07 08:43
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:7 

DO IT YOURSELF !
2017-08-07 09:33
分i飞
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2017-8-6
得分:0 
这个我知道是标准答案,我就不知道我那样为啥不行,也查不出来错
2017-08-07 09:59
wmf2014
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:216
帖 子:2039
专家分:11273
注 册:2014-12-6
得分:7 
把指针变量看成普通变量就可以理解了,函数形参值得改变不影响调用函数的实参值。

能编个毛线衣吗?
2017-08-07 10:03
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:0 
这里第二个swap2 函数为什么会失败 你懂不  他们2是一样的错误原理

程序代码:
#include <stdio.h>

void swap(int* a,int* b)
{
    int* t=a;
    a=b;
    b=t;
    printf("@@@@@ a=%d  b=%d \n",*a,*b);
}

void swap2(int a,int b)
{
    int tmp;
    tmp=a;
    a=b;
    b=tmp;
    printf("##### a=%d  b=%d \n",a,b);
}

int main()
{
    int a=55;
    int b=66;
    swap(&a,&b);
    printf("now a=%d  b=%d \n",a,b);
    swap2(a,b);
    printf("now a=%d  b=%d \n",a,b);
    return 0;
}

/*
@@@@@ a=66  b=55
now a=55  b=66
##### a=66  b=55
now a=55  b=66
*/


DO IT YOURSELF !
2017-08-07 10:10



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-479836-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.161520 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved