• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Помогите с Задачей

  • Автор темы pactok
  • Дата начала
P

pactok

Всем привет,Помогите с задачкой плз...косячит в с++ пишет кучу ошибок,но вроде всё верно
Вот Задание : Необходимо реализовать двусвязный список. В качестве информационной части выступают указатели на массивы строк. Необходимо реализовать следующие функции: добавление элементов в начало/конец массива, вывод конкатенации строк всех элементов на экран, удаление из списка памяти (включая информационную часть, поскольку она тоже определяется указателями).

Код:
#ifndef list
#define list

typedef struct lplist{
char* str;
lplist* next;
lplist* previous;
} NODE;

void add(NODE*& first, NODE newItem);
void del(NODE*& first);
void output(NODE* first);
void flush(NODE*& first);
#endif
#include "stdafx.h"
#include <iostream>
#include "list.h"
using namespace std;


void add(NODE*& first, NODE Item){
if (first==NULL) {
first = new NODE;
first->str = Item.str;
first->next = NULL;
first->previous = NULL;

}
else {
NODE* p;
p = new NODE;
p->str = Item.str;
p->next = first;
first->previous = p;
first = p; 
}


}

void addLast(NODE*& first, NODE Item) {

NODE q,p=First;
While(p->Next != NULL)
p = p->Next;
q=new Node;
q-> Item.str = Item.str;
p->Next=q;
q->Next = NULL;
}
void output(NODE*first){
while (first!=NULL)
{ 
cout<<first->str;
first=first->next;
}
}

void flush(NODE*& first){
while (first!=NULL)
{
NODE * prev = first;
first=first->next;
delete prev;
}
}

#include "stdafx.h"
#include <iostream>
#include "list.h"
using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{ 
NODE * first = NULL;
NODE Mc, Mc1, Mc2;
Mc.str="Cat";
Mc1.str="Come";
Mc2.str="Home";
add(first, Mc);
add(first, Mc1);
add(first, Mc2);
output(first);
cout<<" ";
del(first);
output(first);
flush(first);
return 0;
}
 
D

dreamer

По большей части проблемы с регистром идентификаторов и ключевых слов. Определение функции del отсутствует.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!