| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1027 人关注过本帖
标题:指针 和调用函数的问题。求指教
只看楼主 加入收藏
花脸
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:9
帖 子:788
专家分:907
注 册:2017-1-4
结帖率:95.37%
收藏
已结贴  问题点数:20 回复次数:6 
指针 和调用函数的问题。求指教
#include<stdio.h>
int main()
{
    void exchange(int *q1,int *q2,int *q3);
    int a,b,c,*p1,*p2,*p3;
    scanf("%d%d%d",&a,&b,&c);
    /*p1=&a;
    p2=&b;
    p3=&c;
    exchange(p1,p2,p3);*/                     
    exchange(a,b,c);                          //调用exchange函数时 不用指针作赋值 直接 用a,b,c 怎么不对

    printf("%d,%d,%d",a,b,c);
    return 0;
}
void exchange(int *q1,int *q2,int *q3)
{
    void swap(int *w1,int *w2);
    if(*q1>*q2)
       swap(q1,q2);
    if(*q1>*q3)
      swap(q1,q3);
    if(*q2>*q3)
      swap(q2,q3);
}
void swap(int *w1,int *w2)
{
    int t;
    t=*w1;
    *w1=*w2;
    *w2=t;
}
搜索更多相关主题的帖子: exchange include return 
2017-04-01 17:14
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
收藏
得分:10 
因为abc在传递参数的时候为型参~是值传递~在函数中的型参只是沿用了ab的值~而对函数体外面被调用ab的本值的本身没有影响~

[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2017-04-01 18:27
花脸
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:9
帖 子:788
专家分:907
注 册:2017-1-4
收藏
得分:0 
回复 2楼 九转星河
  什么意思??我听明白, 是不是指针变量只能接受指针变量传递数值?
2017-04-01 19:01
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
收藏
得分:0 
回复 3楼 花脸
指针变量传递进去的是地址值~通过读取该地址来修改该元素的值~可以先理解一下数组传参能改变数组里面的元素一样~

[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2017-04-01 19:40
花脸
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:9
帖 子:788
专家分:907
注 册:2017-1-4
收藏
得分:0 
回复 4楼 九转星河
嗯呢 似乎明白了 谢谢你。
2017-04-01 20:19
peter张
Rank: 2
等 级:论坛游民
威 望:1
帖 子:56
专家分:98
注 册:2017-3-7
收藏
得分:10 
只需记住:形参不能改变实参的值就行了。实参只是“复制”了一份传给形参。
2017-04-01 22:43
花脸
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:9
帖 子:788
专家分:907
注 册:2017-1-4
收藏
得分:0 
回复 6楼 peter张
  恩 好的 记住了 谢谢。
2017-04-03 17:18
快速回复:指针 和调用函数的问题。求指教
数据加载中...
 
   



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

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