【问题标题】:Chained hash-table declaration链式哈希表声明
【发布时间】:2013-05-14 19:55:49
【问题描述】:

在 Master Algorithm with 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] 之类的东西。我对吗?为什么作者的定义能正确通过测试?为什么是对的?谢谢!

【问题讨论】:

    标签: c hashtable chained


    【解决方案1】:

    table 是一个List 指针,用于表示Lists 的数组。它可能是这样初始化的:

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

    【讨论】:

      猜你喜欢
      • 2011-02-03
      • 1970-01-01
      • 1970-01-01
      • 2015-12-31
      • 2015-07-05
      • 1970-01-01
      • 1970-01-01
      • 2015-04-11
      • 1970-01-01
      相关资源
      最近更新 更多