| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 570 人关注过本帖
标题:不知道大家有没有这个疑问
只看楼主 加入收藏
一个孩子
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:5
帖 子:356
专家分:954
注 册:2012-10-1
结帖率:96.77%
收藏
已结贴  问题点数:20 回复次数:6 
不知道大家有没有这个疑问
程序代码:
typedef struct
{
    ElemType *elem;
    int length;    //当前长度
    int list_size;//线性表的长度
}sqlist;
int InitList(sqlist *L)//这里是用的声明指针的方法,下面的用指针来处理
{
    L->elem=(ElemType *)malloc(LIST_INIT_SIZE*sizeof(ElemType));
    if(!L.elem)
    {
        return 0;
    }
    L->length=0;
    L->list_size=LIST_INIT_SIZE;
    return 1;
}//初始化


typedef int ElemType;
typedef struct
{
    ElemType *elem;
    int length;    //当前长度
    int list_size;//线性表的长度
}sqlist;
int InitList(sqlist &L)//这里用的地址符号,把它当做变量来处理。
{
    L.elem=(ElemType *)malloc(LIST_INIT_SIZE*sizeof(ElemType));
    if(!L.elem)
    {
        return 0;
    }
    L.length=0;
    L.list_size=LIST_INIT_SIZE;
    return 1;
}//初始化


我的问题:sqlist &L;     sqlist *L;  感觉应该是一样的,如果把L声明成变量的话直接用 sqlist L 不好么,为什么还要加个地址符呢? 数据结构中总是在这里犯晕,各位有没有谁能详细的解释下啊
搜索更多相关主题的帖子: color 疑问 
2012-11-25 10:58
一个孩子
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:5
帖 子:356
专家分:954
注 册:2012-10-1
收藏
得分:0 
怎么没人呢?  。。。。这可是福利贴啊

重要的不是结果,是求一个结果的过程,哪怕千难万难,当你有想要的结果时,你已走的很远
2012-11-25 14:10
abc00000
Rank: 2
等 级:论坛游民
帖 子:42
专家分:46
注 册:2012-10-16
收藏
得分:0 
这不是C语言,这貌似是java的,你拿到java中贴吧
2012-11-25 15:19
龙航四海
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:58
专家分:102
注 册:2012-10-17
收藏
得分:5 
我也在纠结这个,特别是在初始化的时候会报错,后来我定义成全局变量,把函数调用内的参数省了,有一定作用!
2012-11-25 15:49
一个孩子
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:5
帖 子:356
专家分:954
注 册:2012-10-1
收藏
得分:0 
3楼的兄弟怎么能说是java呢? 这哪里有java的影子啊 亲

重要的不是结果,是求一个结果的过程,哪怕千难万难,当你有想要的结果时,你已走的很远
2012-11-25 17:43
Toomj
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
帖 子:257
专家分:1826
注 册:2011-5-17
收藏
得分:10 
sqlist &L 是传引用;
传引用是以地址的方式传递参数,传递以后,行参和实参都是同一个对象,只是他们名字不同而已,对行参的修改将影响实参的值。
sqlist L是传值;
传值的话函数参数压栈的是参数的副本,任何的修改是在副本上作用,没有作用在原来的变量上。
2012-11-25 18:08
azzbcc
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:江西财经大学
等 级:贵宾
威 望:81
帖 子:3293
专家分:12919
注 册:2012-11-4
收藏
得分:5 
同意楼上,另sqlist *L可以这么理解:(sqlist *)L


[fly]存在即是合理[/fly]
2012-11-25 18:17
快速回复:不知道大家有没有这个疑问
数据加载中...
 
   



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

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