Я пытаюсь создать связанный список на C, но программа падает из-за какой-то загадочной ошибки.
Сначала я попробовал это:
typedef struct product_data product_data;
struct product_data {
int product_code;
int product_size;
product_data *next;
};
product_data *products_head = NULL;
product_data *products_tail = NULL;
int main() {
int newcode = 5;
int newsize = 5;
products_head->product_code = newcode;
products_head->product_size = newsize;
products_head->next = NULL;
return 0;
}
К сожалению, программа вылетает без каких-либо сообщений об ошибках.
Затем я изменил некоторые детали:
typedef struct product_data product_data;
struct product_data {
int product_code;
int product_size;
product_data *next;
};
product_data *products_head = NULL;
product_data *products_tail = NULL;
int main() {
product_data *newproduct;
int newcode = 5;
int newsize = 5;
newproduct->product_code = newcode;
newproduct->product_size = newsize;
newproduct->next = NULL;
products_head = newproduct;
return 0;
}
На этот раз сбоев не было, вроде работает. Я понятия не имею, почему.
Есть идеи?
Заранее спасибо!