Heavy
написал 8 сентября 2006 года в 18:31 (757 просмотров)
Ведет себя
как мужчина; открыл 55 тем в форуме, оставил 698 комментариев на сайте.
Как в С соорудить массив, количество элементов которого может меняться, то есть, грубо говоря, массив с неограниченным количеством элементов (что-то похожее на массив типа TStrings в Делфе)?
Последние комментарии
- OlegL, 17 декабря в 15:00 → Перекличка 21
- REDkiy, 8 июня 2023 года в 9:09 → Как «замокать» файл для юниттеста в Python? 2
- fhunter, 29 ноября 2022 года в 2:09 → Проблема с NO_PUBKEY: как получить GPG-ключ и добавить его в базу apt? 6
- Иванн, 9 апреля 2022 года в 8:31 → Ассоциация РАСПО провела первое учредительное собрание 1
- Kiri11.ADV1, 7 марта 2021 года в 12:01 → Логи catalina.out в TomCat 9 в формате JSON 1
ecobeing.ru
Экология и вегетарианство на благо всем живым существам Планеты.
malloc, realloc, free — эти функции помогут тебе.
А еще лучше отправить Си на помойку истории, взять С++ и использовать std::vector из STL.
Блин, я первый раз за Си. В си я — нуль. И если б ты объяснил мне, как эти функции использовать и с их помощью соорудить нужный массив, было бы просто замечательно
гугль://динамические+массивы+realloc
Cпасибо
quote:
А еще лучше отправить Си на помойку истории, взять С++ и использовать std::vector из STL.
Буга-га! С чего вдруг? Ядро операционок на С++? KVM на С++? Не, не катит
у каждого языка своя ниша, но для userspace программ давно понятно что с++ лучше, чем си. Системное программирование — это ниша Си, согласен.
Спасибо, поржал :)
(никакого намека на флейм)
Вообще говоря — без проблем. Тока не надо тут флеймить, лучше отдельную тему завести
ну если простейший массив вернее список то можно заюзать
GList или GSList из glib.
и вытаскиват ьот туда что надо примерно так
GList *line;
…….
for(line;line!=NULL;line=line->next)
printf(«%s\n»,(char *)line->data);
подробнее можно тут
/usr/local/include/glib-2.0/glib/glist.h
Ради простейшего массива тянуть GLib? Нунафик.
угу, учитывая что все делается стандартными средствами :)