Я понимаю, что этот вопрос был объяснен много, но на самом деле я отчаянно от своего кода. Я хочу, чтобы создать связанный список, создать 5 новых узлов и добавить их в конце списка по одному:Проблема при создании связанного списка и добавлении к нему узлов
typedef struct msg *M;
struct msg{
double data;
M next;
};
void create_msg();
void add();
void main(){
srand(0);
M list_of_msg = NULL;
for(int i = 0; i < 5; i++){
create_msg(list_of_msg);
add(list_of_msg , rand()%15);
}
}
void create_msg(M head){
M m;
m = (M)malloc(sizeof(struct msg));
if(head == NULL)
{
head = m;
head->next = NULL;
}
else
{
m->next= head;
head = m;
}
return(m);
}
void add(M head, double d){
M m, last;
m = (M)malloc(sizeof(struct msg));
last = head;
m->data = d;
m->next = NULL;
if (head == NULL)
{
head = m;
}
else
{
while (last->next != NULL)
{
last = last->next;
}
last->next = m;
}
}
Программа не работает, и я не знаю, где это проблема, хотя я проверил построчно. Любые намеки приветствуются.
"Моя программа не работает" далеко от того, чтобы быть ** ** описание конкретных проблем. – Olaf
Отладчик ............. DCV –