что-то вроде dict в с - PullRequest
       3

что-то вроде dict в с

1 голос
/ 23 декабря 2011

Я пытаюсь написать что-то в c, которое связывает два массива друг с другом, но я очень новичок в языке c и не хочу начинать с неправильного пути ... Что мне нужно, это что-то вроде python's dict , и я думаю об использовании struct . Это путь или мне чего-то не хватает?

Спасибо;)

Ответы [ 4 ]

3 голосов
/ 23 декабря 2011

Посмотрите на эту ссылку . Там объясняется, как создать хеш-таблицу в c.

2 голосов
/ 23 декабря 2011

Питон dict и C struct очень разные звери.

A struct можно рассматривать как способ группировки связанных переменных, чтобы их можно было передавать как единое целое.

A dict - это отображение ключей на значения, где набор ключей обычно не известен во время компиляции. Если вам нужно сделать что-то подобное в C, вам лучше всего использовать библиотеку стандартных структур данных. Они обсуждались в прошлом: Существуют ли библиотеки C с открытым исходным кодом с общими структурами данных?

Существует несколько стандартных структур данных, которые позволяют сопоставить ключи со значениями. A хеш-таблица - разумный выбор по умолчанию.

2 голосов
/ 23 декабря 2011

Я думаю, что вы ищете HashTable . Я просто гуглил для примера , но, оглядываясь вокруг, я уверен, что вы найдете пример реализации, удовлетворяющий вашим потребностям.

1 голос
/ 23 декабря 2011

Найдите тег hastable или текст implementation in C здесь, в SO, и вы найдете несколько примеров, а также интересные проблемы и решения, которые стоит прочитать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...