| 网站首页 | 业界新闻 | 群组 | 交易 | 人才 | 下载频道 | 博客 | 代码贴 | 编程论坛
共有 77 人关注过本帖
标题:数值交换
只看楼主 加入收藏
wj839656997
Rank: 2
等 级:论坛游民
帖 子:11
专家分:11
注 册:2018-12-4
结帖率:100%
  已结贴   问题点数:10  回复次数:2   
数值交换
代码如下,为什么两个变量的值还是没有变,求解答。
int sum(int *a,int *b)
{
        int *tmp;
        tmp=a;
        a=b;
        b=tmp;

}
void main()
{
        int x=1,y=9;
        int (*p)();
        p=sum;
        (*p)(&x,&y);
        printf("x=%d,y=%d\n",x,y);
}

2018-12-06 15:47
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:273
帖 子:6001
专家分:34326
注 册:2011-1-18
  得分:5 
int tmp = *a;
*a = *b;
*b = tmp;

2018-12-06 16:11
lin5161678
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:11
帖 子:482
专家分:1723
注 册:2011-12-3
  得分:5 
值传递
2018-12-06 16:39







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

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