在计算机科学中,数据结构是在计算机中组织数据的特定方式,以便可以有效地使用它。在TurboC ++上编译时,我的程序出错了。它在thelearningpoint.net上。它有6个错误。调试它。请解释一下代码。
#include<stdio.h>
#include<stdlib.h>
typedef struct Node
{int data;
struct Node *next;
struct Node *prev;
}node;
void insert(node *pointer, int data)
{ while(pointer->next!=NULL)
{pointer=pointer->next;
}
pointer->next=(node *)malloc(sizeof(node));
(pointer->next)->prev=pointer;
pointer=pointer->next;
pointer->data=data;
pointer->next=NULL;
}
void delete(node*pointer,int data)
{ while(pointer->next!=NULL && (pointer->next)->data!=data)
{pointer=pointer->next;
}
if(pointer->next==NULL)
{printf("Element %d not present",data);
return;
}
node *temp;
temp=pointer->next;
pointer->next=temp->next;
temp->prev=pointer;
free(temp);
return;
}
int main()
{node *start,*temp;
start=(node *)malloc(sizeof(node));
temp=start;
temp->next=NULL;
temp->prev=NULL;
printf("1.Insert");
printf("2.Delete");
while(1)
{ int query;
scanf("%d",&query);
if(query==1)
{int data;
scanf("%d",&data);
insert(start,data);
}
else if(query==2)
{int data;
scanf("%d",&data);
delete(start,data);
}
} }
答案 0 :(得分:0)
那是因为第38行有一个名为delete的函数,但delete是c ++中的关键字,重命名该函数!
编辑:
正如我的评论者所指出的,你也可以使用正确的编译器