因为写习惯了双向链表,
所以定义结构体的时候都喜欢定义成指针。
typedef struct _SqlData
{
char* ean;
char* name;
int price1;
double sku;
}SqlData;
SqlData* goods = NULL;
goods->ean = "1101";
执行就会出错,内存溢出。
因为指针下的ean
并没有分配内存, 我们只分配了 指针的内存。
所以我们写链表的时候,定义的结构体指针都会malloc
修改:
SqlData goods = {0};
goods.ean = "1101";