我正在尝试用c语言写两个相互关联的数组,但我是c语言的新手,我不想从错误的路径开始......我需要的是像python的< strong> dict ,我正在考虑使用 struct 。这是要走的路还是我缺少的东西?
谢谢;)
答案 0 :(得分:3)
看看这个link。 它解释了如何在c。
中创建哈希表答案 1 :(得分:2)
我认为您正在寻找HashTable。我只是googled for an example,但环顾四周我相信你会找到满足你需要的实施例。
答案 2 :(得分:2)
Python dict
和C struct
非常不同的野兽。
可以将struct
视为将相关变量组合在一起的一种方式,以便它们可以作为一个单元传递。
dict
是从键到值的映射,其中键集通常在编译时是未知的。如果你需要在C中做类似的事情,最好的办法就是使用标准数据结构库。这些已在过去讨论过:Are there any open source C libraries with common data structures?
有几种标准数据结构可以使人们将键映射到值。 hash table是合理的默认选择。
答案 3 :(得分:1)
在SO中搜索标记hastable
或文本implementation in C
,您会发现一些示例以及值得阅读的有趣问题和解决方案。