c++链表中指针

不才 不才 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
#include <iostream.h>
#include "malloc.h"
struct Node{
int data;
Node * next;
};
void create(Node *L){
Node * p;

L=(Node*)malloc(1*sizeof(Node*));

(*L).data=0;
(*L).next=NULL;


p=(Node*)malloc(1*sizeof(Node*));
p->data=0;
p->next=NULL;

while(p->data!=-1){
p=(Node*)malloc(1*sizeof(Node*));
cin>>p->data;
p->next=NULL;
if(!(*L).next){
L->next=p;
}
p->next=p;
}

}
int main(){
Node L;
Node *p;
create(&L); //头结点传递
cout<<L.data;

p=&L;
p=p->next;
while(p->next){
cout<<p->data<<" ";
p=p->next;
}

return 0;

}


程序的话编译的时候是没有错的,只要输入到-1就会出错了,试着把输出的部分注释掉了是不会出错的,
为了弄清楚指针的一系列东西,所以自己写了个这样子的,如果我一定要用这种将头结点穿过去的方式写的话请问要怎么修改呢,谢谢!
...全文
评论 12
收藏 已收藏
分享
返回顶部
不才
C++ 语言 65,214 成员 250,514 内容