C语言 关于链表 函数如何通过参数传递返回一个单向链表
typedefstructLNode{chardata[WMAX];structLNode*next;}LNode,*LinkList;voidfun(LinkList&...
typedef struct LNode
{
char data[WMAX];
struct LNode * next;
}LNode,*LinkList; void fun(LinkList &L);main(){LinkList L,P;P=(LinkList)malloc(sizeof(LNode));L=P;fun(L);}假设fun函数是向L链表里插入借点,这样能返回一个单向链表吗 = = 脑袋卡壳了 求疏导 展开
{
char data[WMAX];
struct LNode * next;
}LNode,*LinkList; void fun(LinkList &L);main(){LinkList L,P;P=(LinkList)malloc(sizeof(LNode));L=P;fun(L);}假设fun函数是向L链表里插入借点,这样能返回一个单向链表吗 = = 脑袋卡壳了 求疏导 展开
4个回答
展开全部
以下为实例代码。
#include <stdio.h>
#include <stdlib.h>
struct node
{
int v;
struct node *next;
};
struct node * make_head(void)//函数功能,返回一个链表的头节点
{
struct node *ret;
ret = malloc(sizeof(struct node));//申请一个头节点空间,
ret->next = NULL;
return ret;//返回头节点。
}
调用make_head得到的返回值,就是用来标记一个链表起始的头节点。
在实际应用中,返回链表的实现方式有很多种,功能也各不相同,但原理都是一样的。
2013-08-02
展开全部
没有看到你的fun函数实现,无法判断.不知道返回链表是什么意思;得到头指针不就可以获取整个链表了吗?看到你的fun声明为无返回值,那么你是想通过修改参数来实现某些目的吗?单向链表如果没有对头指针进行拷贝保存,那么头指针是不能被修改的,否则是无法通过其他方法重新获取头指针的.也就是说你会失去前面的数据.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-08-02
展开全部
链表不能用作返回值的,你可以在fun里面对链表做处理,再返回头链表头指针即可
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
C语言关于链表函数如何通过参数传递返回一个单向链表
2343
2343
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询