Я пытаюсь реализовать очереди со связанным списком с узлом заголовка. Программа компилируется, но она дает ошибку времени выполнения. Можете ли вы предложить, что мне следует изменить?Единственный связанный список с заголовком - ОШИБКА
Функция дисплея в порядке.
#include <stdio.h>
#include <stdlib.h>
#define MALLOC(p,n,type) \
p=(type*)malloc(n*sizeof(type)); \
struct node
{
int info;
struct node *link;
};
typedef struct node *NODE;
NODE insert_rear(int item,NODE head)
{
NODE temp;
MALLOC(temp,1,struct node);
temp->info=item;
temp->link=NULL;
if(head==NULL)
{
head->link=temp;
return head;
}
NODE cur;
while(cur->link!=NULL)
{
cur=cur->link;
}
cur->link=temp;
return head;
}
NODE delete_front(NODE head)
{
if(head==NULL)
{
printf("Empty");
return head;
}
NODE temp,first;
first=head->link;
head->link=first->link;
printf("Item deleted is %d",first->info);
free(first);
return head;
}
Какие ошибки времени? Ошибки бывают разных типов. – abelenky
У вас нет программы здесь, которую мы можем запустить, особенно потому, что ей не хватает функции 'main'. Я не могу скомпилировать и запустить этот код, поэтому я не могу воспроизвести вашу проблему, поэтому я не могу вам помочь. – abelenky
Удалить точку с запятой в конце строки '# define'. И удалите хотя бы вторую обратную косую черту; весь макрос поместился бы на одну линию удобно, поэтому я потерял бы и то, и другое. –