我使用search.h
库通过hcreate
函数定义哈希表。获取(search.h)哈希搜索表中的所有密钥
我该如何检查该表中的所有键? hsearch
总是期望一个条目来搜索(或存储)。
This是文档到管理哈希表(hcreate
,hsearch
和hdestroy
),但有没有提到如何通过结构进行迭代以获取所有已存储密钥的所有三个功能。
当在表格中存储条目时,I malloc
是关键值,所以想要一个简单的方法来释放这些值。
我可以避免必须将它们存储在单独的结构(如数组)中吗?
我不希望hdestroy
自动为我做这件事,因为它无法知道key
指向动态分配或静态内存(或实际上,如果我还没有释放内存)。
切换到不同的哈希搜索表库不是一个选项。我必须与此合作。我在CentOS上使用GCC 4.1.2。
良好的联系,我认为这只是一些古怪的第三方图书馆。请注意安全警告:'MT-不安全种族:hsearch | AS-不安全的堆| AC-Unsafe腐败mem',这只是确认我的本能,不惜一切代价避免它。 – kdopen 2015-02-11 15:38:50
谢谢,看起来好像没有四处存储所有malloc'd元素在一个单独的结构。 – Nobilis 2015-02-11 15:39:34