コードは 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に変更されたことを追加するのを忘れていました..これは私のhashtableモジュールに含まれています。
現在、2 つのハッシュ テーブルを作成しようとしています。1 つには、2 つの長整数を格納するテーブルがあります。もう 1 つのハッシュテーブルは、1 つの long 整数とリンクされたリスト (2 つの long 整数を持つ) を取ります。