请问写的程序插入一个数到链表中哪里错了,谢谢
#include<iostream.h>#include<stdlib.h>
#include<stdio.h>
#include"Linklist.h"
int main()
{
Linklist L,P;
Linklist La;
createList(La,6);
InsertList(La,4,38);
for(int r=0;r<6;r++)
{cout<<La->data<<" "<<endl;}
return OK;
}
这是cpp文件
#define OK 1
#define ERROR 0
typedef int Status;
typedef int ElemType;
typedef struct LNode{
ElemType data;
struct LNode *next;
}LNode,*Linklist;
Status createList(Linklist &L,int n)
{
L=new LNode;
L->next=NULL;
for(int i=n;i>0;--i){
Linklist P;
P=(Linklist)malloc(sizeof(LNode));
cin>>P->data;
P->next=L->next; L->next=P;}
return OK;
}
Status InsertList(Linklist&L,int i,ElemType e)
{
Linklist P;
ElemType j;
P=L;j=0;
while(P&&j<i-1)
{P=P->next;++j;}
if(!P||j>i-1) return ERROR;
Linklist s;
s=(Linklist)malloc(sizeof(LNode));
s->data=e;s->next=P->next;
P->next=s;
return OK;
}
这是.h文件