数据结构线性链表的使用问题

dreamup 2004-11-02 01:51:15
在严蔚敏的数据结构C语言版本中,定义了一些对线性链表的操作函数,比如InitList(&L),表示构造一个空的线性表L;DestroyList(&L)对已存在的线性表L进行销毁操作;ListEmpty(L)表示对线性表L判断是否为空表,如果为空,返回TRUE,否则返回FALSE。请问,在函数定义里中什么时候使用需要加上&呢?
...全文
162 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
qiqi162002 2004-11-02
  • 打赏
  • 举报
回复
这里对楼上的几位认为是引用的说一句:在声明函数时出现&是引用,在调用函数时出现&是取地址
qiqi162002 2004-11-02
  • 打赏
  • 举报
回复
为什么的话看这贴:http://community.csdn.net/Expert/topic/3499/3499114.xml?temp=.6721308
sutra 2004-11-02
  • 打赏
  • 举报
回复
这是取址,不是引用
void f1( int& i) {printf("%d\n",i;}//引用
void f2( int *p){printf("%d\n",*p;}//取址
int main()
{
int i ;
f1(i) ;
f2(&i) ;
return 0 ;
}

mickstar 2004-11-02
  • 打赏
  • 举报
回复
刚好在看严版数据结构
原文中第10页写到--
为了便于算法描述,除了值调用方式外,增添c++语言的引用调用的参数传递方式。在形参表中,以
&打头的参数即为引用参数。

dreamup 2004-11-02
  • 打赏
  • 举报
回复
个人比较同意楼上的看法,是指函数的参数类型为指针的指针,因此当把一个指针变量做为参数时,要为些参数加上&。但还是不明白,为什么在initlist()函数中的参数是指针的指针。。如果参数定义为指针就无法进行访问吗?
qiqi162002 2004-11-02
  • 打赏
  • 举报
回复
是因为InitList等函数的定义的参数类型是指针的指针,initlist(NODE **L),而你传入的是一个指针所以还要对它取地址就用initlist(&L),这里不是引用.C中没有引用
NoneSoVile 2004-11-02
  • 打赏
  • 举报
回复
&表示取变量的地址,地址就是存放在指针里面的东东
picoolo1124 2004-11-02
  • 打赏
  • 举报
回复
在C里面可以把它当作指针
kunpengzhi 2004-11-02
  • 打赏
  • 举报
回复
为了方便表达,严的C版数据结构使用的是类C语言,即在C语言的基础上增加了一些便于表达的语言特征,引用(&) 便是其中之一。建议参考任意C++教程中对于引用的描述。
lifan5748 2004-11-02
  • 打赏
  • 举报
回复
加&表示引用

70,037

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧