构造线性表中的参数问题

snfeng 2009-12-21 02:07:34
Status InitList(SqList *L)
{
(*L).elem=(ElemType*)malloc(LIST_INIT_SIZE*sizeof(ElemType));
if(!(*L).elem)
exit(OVERFLOW);
(*L).length=0;
(*L).listsize=LIST_INIT_SIZE;
return OK;
}
main()
{
SqList La,Lb;
InitList(&La);
…………
}

可以把*L改为L吗?如下:
Status InitList(SqList L)
{
(L).elem=(ElemType*)malloc(LIST_INIT_SIZE*sizeof(ElemType));
if(!(L).elem)
exit(OVERFLOW);
(L).length=0;
(L).listsize=LIST_INIT_SIZE;
return OK;
}
main()
{
SqList La,Lb;
InitList(La);
…………
}
谢谢!
...全文
105 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
l87480405 2009-12-21
  • 打赏
  • 举报
回复
当让不行啊,要不怎么能改变表中的元素值呢?
z569362161 2009-12-21
  • 打赏
  • 举报
回复
可以把*L改为L吗?

不行
selooloo 2009-12-21
  • 打赏
  • 举报
回复
可以这样修改,但这样InitList(La); 对LA待修改仅限于InitList函数内,函数结束后,La恢复原样;
LZ可以自己试试
donkey301 2009-12-21
  • 打赏
  • 举报
回复
需要加&,要不然你参数的值运行完函数后不会改变。(指针就没有这个问题,你可以仔细想想为什么)。

Status InitList(SqList& L)

69,369

社区成员

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

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