我想实现一个链表的数组(为了实现一个哈希表)。
我在一开始就遇到了问题...我定义了一个链表结构,我初始化了链表的数组,就像一个指向列表的指针数组:liste * Oblist[65003];
(我需要像这样初始化它:liste * Oblist[65003] = {NULL};
?)
我想在索引12121(暂时为NULL)中获取列表,所以我做了
liste L = *Oblist[12121] ;
程序编译没有错误,但是当我运行它时,我得到Segmentation fault (core dumped)
以下是整个代码:
typedef struct Doublet {char * car ; struct Doublet * cdr ;}* liste ;
liste * Oblist[65003];
int main(void){
liste L = *Oblist[32123] ;
return 0;
}
提前谢谢你;)
答案 0 :(得分:1)
你有一些问题。 liste
是typedef被指定为struct Doublet
的指针,所以它应该是
liste Oblist[65003];
...
liste L = Oblist[32123];
或者,或者:
typedef struct Doublet { ... etc. } liste;
...
liste *Oblist[65003];
...
liste *list = Oblist[32123];