社区
C语言
帖子详情
构造链表问题
韩雷
2005-09-22 03:37:46
我想构造字符串一个链表:
struct N
{
char* a;
N* next;
};
main()
{
N ???;
while(继续)
cin >> ??? ;
}
我想问问 ??? 处应该如何定义才能做到可以定义无限个N。
谢谢
...全文
166
10
打赏
收藏
构造链表问题
我想构造字符串一个链表: struct N { char* a; N* next; }; main() { N ???; while(继续) cin >> ??? ; } 我想问问 ??? 处应该如何定义才能做到可以定义无限个N。 谢谢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
格兰特杨
2005-09-22
打赏
举报
回复
N *head = new N;
N *curr = head;
curr = new N;
最主要的问题是,你在调用curr = head后为什么再new一个呢。这样的话,head就不能代表link中的第一个了。
修改:
N *head = new N; ->> N *head;
N* s = new N ->> N *s;
顺便说,你是写java的吗?:)
韩雷
2005-09-22
打赏
举报
回复
解决了这样:
N *head, *p,*q;
int i = 0;
head = p = (struct N *)malloc(sizeof(struct N));
while(i<5)
{
q=(struct N *)malloc(sizeof(struct N));
cin >> q->a;
p->next=q;
p=q;
i++;
}
p->next=NULL;
while(head != NULL)
{
cout << head->a << endl;
head = head->next ;
}
那位还有高见,请赐教,晚上揭帖,谢谢各位
韩雷
2005-09-22
打赏
举报
回复
无法通过head 或 curr 遍历 ,我刚试过,
N *head = new N;
N *curr = head;
curr = new N;
int i=0;
while((i++) <3)
{
cin >> curr->a;
curr->next = new N;
curr = curr->next;
}
N* s = new N;
s = head; //换成curr也不行
for(int j=0;j<3;j++)
{
cout << s->a << endl; 把s换成head或curr都不行
s= s->next;
}
fujingn188
2005-09-22
打赏
举报
回复
curr = curr->next;
那原来的curr不就被覆盖了吗?
当while完后curr还只是一个N
//这个是使curr中的地址等于它的下一结点的地址,其目的是移动curr,使链表
能生成新的结点.建议你画个图理解.
xiaocai0001
2005-09-22
打赏
举报
回复
但是你通过head指针
可以遍历生成的链表了
链表中记录了你输入的所有数据
韩雷
2005-09-22
打赏
举报
回复
curr = curr->next;
那原来的curr不就被覆盖了吗?
当while完后curr还只是一个N
xiaocai0001
2005-09-22
打赏
举报
回复
你是在学C吧
若是C++的话
还是用new更好些
韩雷
2005-09-22
打赏
举报
回复
谢谢,但
我真不知该如何问才能得到我想要的答案,我把我的代码都贴出来了,真希望有人能帮帮我,万分感谢
至于用malloc和realloc或calloc的话,该怎么用呢,我真的不知道。
格兰特杨
2005-09-22
打赏
举报
回复
只是一种思路,但你不能把 cin >> 到char*中,只能到char中。
struct N
{
char a;
N* next;
};
main()
{
N *head;
N *curr = head;
curr = new N;
while(cin >> curr->a)
{
curr->next = new N;
curr = curr->next;
}
v41dugu
2005-09-22
打赏
举报
回复
用malloc动态分配就可以了
【尾插法】表尾插入法
构造
链表
(10 分)
本题实现
链表
的
构造
,采用表尾插入法
构造
链表
,输出表中所有元素。 函数接口定义: 函数接口: ptr creat( );//
构造
链表
void output(ptr p);//输出
链表
元素 其中p 是用户传入的参数。creat函数返回
链表
的头...
6-32 表头插入法
构造
链表
本题实现
链表
的
构造
,采用表头插入法
构造
链表
,输出表中所有元素。 函数接口定义: 函数接口: ptr creat( );//
构造
链表
void output(ptr p);//输出
链表
元素 其中p是用户传入的参数。creat函数返回
链表
的头指针...
C++使用数组
构造
链表
C++使用数组
构造
链表
1、
链表
的定义 struct Node{ int value; struct Node* next; }; 2、使用数组
构造
链表
Node *createList_array(int *a, int n){ Node *root = new Node(); Node *pnode = root; for (int...
结构体嵌套
构造
链表
结构体嵌套
构造
链表
时,要使用指针的原因,原理
6-35
构造
有序
链表
//
构造
链表
void output(ptr p);//输出
链表
元素 其中p是用户传入的参数。creat函数返回
链表
的头指针,输入在creat函数中输入,以0表示输入结束。output函数输出
链表
元素,以一个空格隔开 裁判测试程序样例: #...
C语言
69,382
社区成员
243,073
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章