Как представить подобный Python словарь в C

В Python это легко:

x = {}
x['USD'] = "Dollars"
x['CLP'] = "Pesos"

или

y = {'lat': 23.678900, 'lng': 121.451928, 'name': "Sin City"}

Я думаю, что большинство этих видов проблем было решено, поэтому где я могу получить информацию о словарях в C? Я не хочу изобретать велосипед.

Как я реализую словарь в C?

8
задан Synchro 26 June 2014 в 20:57
поделиться

4 ответа

Они называются хеш-таблицами или хеш-картами.

Для C ++ существует множество стандартных.

См. Простые хэш-функции

2
ответ дан 6 December 2019 в 00:54
поделиться

Ответы на все ваши вопросы можно найти здесь .

Идея: используйте хеш-функцию, избегая коллизий, чтобы использовать их в качестве индекса.

0
ответ дан 6 December 2019 в 00:54
поделиться

glibc предоставляет hcreate, hsearch и hdestroy.

1
ответ дан 6 December 2019 в 00:54
поделиться

Хэш-таблицы - это прекрасно. Если вы хотите придерживаться стандартных функций библиотеки C, есть также bsearch, который хорош для словарей с постоянным поиском или динамических словарей в сочетании с qsort.

0
ответ дан 6 December 2019 в 00:54
поделиться
Другие вопросы по тегам:

Похожие вопросы: