所以代码是说 List 和 size 不是一个结构?
typedef struct HashTable{
int size;
ListRef **List;
} hash;
typedef struct hash *hash_ref;
hash_ref *newHash(int size){
hash_ref *hashed= NULL;
if(size<1){
return NULL;
}
if( (hashed=malloc(sizeof(hash))) ==NULL){
return NULL;
}
if( (hashed->List=malloc(sizeof(ListRef*)*size)) ==NULL){
return NULL;
}
for(int i=0; i<size; i++){
hashed->List[i]=NULL;
}
hashed->size=size;
return hashed;
}
这是我的列表功能
typedef struct Node{
long key;/*book id*/
ListRef data;
struct Node* next;
struct Node* prev;
}NodeType;
typedef NodeType* NodeRef;
typedef struct ListHdr{
NodeRef first;
NodeRef last;
NodeRef current;
long length;
}ListHdr;
我想知道这个错误是怎么回事?我忘了在我的 List 头文件中添加 ListHdr 已更改为 ListRef 。它包含在我的哈希表模块中。
我目前正在尝试创建 2 个哈希表。一个有表存储 2 个长整数。另一个哈希表需要 1 个长整数和一个链表(有 2 个长整数)。