Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Коллекция в C99
|
|||
|---|---|---|---|
|
#18+
Подкиньте примеров коллекций на Си. Есть много текстовых файлов в папке, с гиперссылками друг на друга. Нужно пройти по всем ссылкам в файлах, начиная с главного, и собрать файлы в коллекцию (и не зациклится при перекрестных ссылках) Гиперссылка на файл, видимо должна быть ключом для его получения из коллекции. Ну сериализацию тоже чтобы была. Короче говоря, эту кучу текстовых файлов с данными, лежащими в папке, надо перетащить внутрь программы, чтобы брать их не с диска, а из памяти. Как мне кажется лучший вариани - коллекция. Если не прав, то подскажите как. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2017, 21:16 |
|
||
|
Коллекция в C99
|
|||
|---|---|---|---|
|
#18+
Eolt, std::map<filename, uri> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2017, 22:26 |
|
||
|
Коллекция в C99
|
|||
|---|---|---|---|
|
#18+
Ой, в С99. Ну придется самому поискать реализацию map на С ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2017, 22:26 |
|
||
|
Коллекция в C99
|
|||
|---|---|---|---|
|
#18+
EoltПодкиньте примеров коллекций на Си. контейнеры в GLib ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2017, 03:04 |
|
||
|
Коллекция в C99
|
|||
|---|---|---|---|
|
#18+
Eolt, Задача полного обхода графа. В глубину или в ширину. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2017, 09:48 |
|
||
|
Коллекция в C99
|
|||
|---|---|---|---|
|
#18+
EoltПодкиньте примеров коллекций на Си. Самому ничего писать не нужно, есть куча вариантов разной степени легко-тяжеловесности. К примеру: https://github.com/srdja/Collections-C https://troydhanson.github.io/uthash/ ну и glib, если тебя не страшит этот монстр зависимостей. EoltЕсть много текстовых файлов в папке, с гиперссылками друг на друга. Нужно пройти по всем ссылкам в файлах, начиная с главного, и собрать файлы в коллекцию (и не зациклится при перекрестных ссылках) Гиперссылка на файл, видимо должна быть ключом для его получения из коллекции. звучит, если честно, как кандидат на использование BDB, LMDB, короче, inmemory database EoltНу сериализацию тоже чтобы была. см выше про https://symas.com/offerings/lightning-memory-mapped-database/ https://en.wikipedia.org/wiki/Berkeley_DB EoltКороче говоря, эту кучу текстовых файлов с данными, лежащими в папке, надо перетащить внутрь программы, чтобы брать их не с диска, а из памяти. Как мне кажется лучший вариани - коллекция. Если не прав, то подскажите как. в первом приближении тебе может очень здорово помочь mmap(). для 64-х битных систем это самое оно - текстовый файл просто начинает лежать как массив байтов по адресу такому-то, ценой микросекунды системного вызова, никакого I/O более не нужно. для адресации элементов из базы данных можно использовать не прямые указатели, а offset-ы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2017, 12:56 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=39388153&tid=2018317]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
169ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
57ms |
get tp. blocked users: |
2ms |
| others: | 281ms |
| total: | 556ms |

| 0 / 0 |
