为了账号安全,请及时绑定邮箱和手机立即绑定

关于函数的参数

这里参数为什么都要是Elem *e,我用Elem e不可以吗?

正在回答

1 回答

Elem *e 是传入地址值,e的值发生在函数体内改变后会将原来的值同时改变,目的为了返回e的值

例:

void swap(int a,int b){
    int t=a;
    a=b;
    b=t;
}
void swap2(int *a,int *b){
    int t=*a;
    *a=*b;
    *b=t;
}
int main(){
    int a=2,b=3;
    swap(a,b);    // a=2 b=3 (ab的值未发生改变)
    swap2(&a,&b); //  a=3 b=2 (ab以完成交换)
}


2 回复 有任何疑惑可以回复我~
#1

梦游病者 提问者

明白了,谢谢
2018-12-18 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
数据结构探险之线性表篇
  • 参与学习       57476    人
  • 解答问题       257    个

线性表的主体顺序表和链表,让学员能够将知识融会贯通学以致用

进入课程

关于函数的参数

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信