| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 868 人关注过本帖
标题:形参与实参
取消只看楼主 加入收藏
gao_guai
Rank: 2
等 级:论坛游民
帖 子:73
专家分:16
注 册:2011-6-5
收藏
 问题点数:0 回复次数:5 
形参与实参
#include"stdio.h"
void fun(int*a,int*b)
{
    int *k;
    k=a;a=b;b=k;
}
main()
{
    int a=1,b=2,*x=&a,*y=&b;
    fun(x,y);
    printf("%d%d",a,b);
    printf("%d%d",*x,*y);
}
为什么调用fun后*x和*y的值没有改变呢,不理解了,高人指点
搜索更多相关主题的帖子: void include 
2011-06-13 10:57
gao_guai
Rank: 2
等 级:论坛游民
帖 子:73
专家分:16
注 册:2011-6-5
收藏
得分:0 
回复 4楼 voidx
肯定是你记错了,我都没有改过
2011-06-13 16:31
gao_guai
Rank: 2
等 级:论坛游民
帖 子:73
专家分:16
注 册:2011-6-5
收藏
得分:0 
回复 4楼 voidx
   ......  ......
2011-06-13 17:26
gao_guai
Rank: 2
等 级:论坛游民
帖 子:73
专家分:16
注 册:2011-6-5
收藏
得分:0 
回复 2楼 voidx
程序代码:
void fun(int *a,int *b)
{
int *k;
k=a;a=b;b=k;
}
和
void fun(int *a,int *b)
{
int k;
k=*a;*a=*b;*b=k;
}
传递的时候到底发生了什么?为什么会不一样呢,都是传的地址啊?第一个把两个指针交换了,第二个把指针里的内容交换了


[ 本帖最后由 gao_guai 于 2011-6-16 09:59 编辑 ]
2011-06-16 09:26
gao_guai
Rank: 2
等 级:论坛游民
帖 子:73
专家分:16
注 册:2011-6-5
收藏
得分:0 
回复 17楼 官人
不是的,我的没有问题,
2011-06-16 09:57
gao_guai
Rank: 2
等 级:论坛游民
帖 子:73
专家分:16
注 册:2011-6-5
收藏
得分:0 
回复 20楼 lz1091914999
什么意思,不好意思,不用解释了,懂了

[ 本帖最后由 gao_guai 于 2011-6-16 10:01 编辑 ]
2011-06-16 10:00
快速回复:形参与实参
数据加载中...
 
   



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

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