| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 487 人关注过本帖
标题:还是函数问题??能不能有人可以解答?
只看楼主 加入收藏
swiminfire
Rank: 1
等 级:新手上路
帖 子:96
专家分:0
注 册:2005-8-11
收藏
 问题点数:0 回复次数:3 
还是函数问题??能不能有人可以解答?

fun(int *x,int *y)
{printf("%d %d",*x,*y);*x=3;*y=2;}
main()
{
int x=7,y=3;
fun(&y,&x);
printf("%d %d",x,y);
getch();
}

打印的结果是3 72 3,前面的3 7明白,是因为函数传值是严格对应的,所以把&Y当*X传了,&X当*Y传了,所以出来的结果是3 7.
但是为什么里面的*X,*Y.出来的结果是2 3呢?这个不明白??
都没人在了吗???解答一下谢谢了
搜索更多相关主题的帖子: 函数 解答 
2007-01-28 22:48
mp3aaa
Rank: 5Rank: 5
等 级:贵宾
威 望:17
帖 子:2013
专家分:8
注 册:2006-2-15
收藏
得分:0 
哈哈 2级的题吗。。
首先说 3 7 是printf("%d %d",*x,*y);着个句子输出的值
后来;*x=3;*y=2;等价与x=2 y=3;
所以 2 3是printf("%d %d",x,y);输出的值

羊肉串 葡萄干 哈密瓜!!
2007-01-28 23:07
swiminfire
Rank: 1
等 级:新手上路
帖 子:96
专家分:0
注 册:2005-8-11
收藏
得分:0 
哦,原来是这样啊.在函数里面的那两个指针就相当与外面传进去的东西的值.谢谢谢谢!!
我也不知道是几级的,看到了,想想,不明白的就问了.请别介意哦!

Get in first, and then word your ways out ! BY KIKI
2007-01-28 23:12
huawang99
Rank: 1
等 级:新手上路
帖 子:54
专家分:0
注 册:2007-1-28
收藏
得分:0 
晕,二级的题也太基础了啊!

2007-01-28 23:25
快速回复:还是函数问题??能不能有人可以解答?
数据加载中...
 
   



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

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