2013-05-20 2 views
1

C와 마스터 알고리즘에서, 저자는 다음과 같은 연쇄 해시 테이블의 구조를 선언했다 :사슬로 매인 해시 테이블 선언

typedef struct CHTbl_ { 

int    buckets; 

int    (*h)(const void *key); 
int    (*match)(const void *key1, const void *key2); 
void    (*destroy)(void *data); 

int    size; 
List    *table; 

} CHTbl; 

하지만 저자가 사용한으로 마지막이 List *table[buckets]; 해야한다 생각 &htbl->table[bucket]과 같은 것입니다. 내가 맞습니까? 왜 저자의 정의가 시험에 올바르게 합격 할 수 있습니까? 고맙습니다!

답변

1

tableList 포인터이며 List의 배열을 나타내는 데 사용됩니다. 아마도 다음과 같이 초기화 될 것입니다 :

htbl->table = malloc(sizeof(List) * htbl->buckets);