Я прочитал код с этого сайта: http://www.codeproject.com/Articles/24684/How-to-create-Linked-list-using-C-C, но это дало мне ошибку сегментации, и я не совсем понял.Вставка со спины: Связанный список
* Я изменил его к моим структурам
struct Node
{
int type;
char cmd[256];
struct Node *next;
};
struct Node *head = NULL;
void insert(int val, char arr[])
{
struct Node *temp1 = (struct Node*)malloc(sizeof(struct Node));
struct Node *temp2 = (struct Node*)malloc(sizeof(struct Node));
temp1 = head;
while(temp1->next != NULL)
temp1 = temp1->next;
temp2->type = val;
strcpy(temp2->cmd, arr);
temp2->next = NULL;
temp1->next = temp2;
}
Что не так с этим кодом?
OK, эта проблема решена. Thx Guyz '^'! Знаете ли вы, что когда-либо помещаете charcters (ASCII 34) в строку printf? (Например, если я делаю printf («Распечатать это предложение»), это дало бы мне ошибку в предложении, разрезаю я наложил еще один набор .. «» внутри «» Thx кучи
Какая линия вызвала SEG-вины? –
Вам не нужно выделять память для 'temp1' или у вас будет утечка памяти. 'struct Node * temp1 = head' в порядке. – Michael
Можете ли вы рассказать нам о содержимом 'struct Node'? (и что является членом 'cmd') – Michael