|
Как в си объявить массив с возможностью изменения его размера? |
|
|
|
 |
Ответов
|
Jul 8 2011, 07:27
|

Местный
  
Группа: Свой
Сообщений: 381
Регистрация: 5-07-05
Из: Уфа
Пользователь №: 6 544

|
Цитата(GetSmart @ Jul 7 2011, 13:00)  Поэтому имхо вопрос заключается в создании указателя на пустой массив, потом по ходу проги присваивание указателю адреса (на статик, динамик или прочий буфер) и хранение размера массива во второй целочисленной переменной. В данном случае это должно быть как-то так? Код uint16_t Buffer[]; uint16_t *ptr_buffer; uint16_t index_buffer; uint16_t value;
void main(void) { ptr_buffer = &Buffer; index_buffer = 32; value = ptr_buffer + 32; }
|
|
|
|
|
Jul 8 2011, 08:14
|
.
     
Группа: Участник
Сообщений: 4 005
Регистрация: 3-05-06
Из: Россия
Пользователь №: 16 753

|
Цитата(jorikdima @ Jul 8 2011, 13:01)  Поддержу, пожалуй. Если у форума одна из задач - интерактивное обучение, естественно в такой форме чтобы у вопрошающего не отбивалось желание вообще заниматься, то это не лучший подход. Старческое брюзжание. Представьте такого человека в роли препода в любом заведении и учиться сразу расхочется. Ветка называется "в помощь начинающему". Расслабьтесь, профи  Цитата(011119xx @ Jul 8 2011, 13:06)  слегка подправил: Код void main(void) { ptr_buffer = &Buffer; index_buffer = 32; ptr_buffer[index_buffer] = 0х0010; value = ptr_buffer[index_buffer]; } Цитата Это работает. Но это вариант с явным указанием размера буфера при объявлении. Я так понял иначе и нельзя. Иначе буферов может быть много и разных. Хоть с заданным размером на этапе компиляции, хоть с неявным, выделенным в динамической памяти (куче). И по ходу проги, одному общему указателю (ptr_buffer) можно присваивать разные адреса (адреса разных буферов). Тогда один общий алгоритм будет фактически "шарить" по разным буферам. Частный случай переменной-указателя - параметр функции.
Сообщение отредактировал GetSmart - Jul 8 2011, 16:21
--------------------
Заблуждаться - Ваше законное право :-)
|
|
|
|
|
Jul 8 2011, 08:43
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
QUOTE (GetSmart @ Jul 8 2011, 11:14)  Если у форума одна из задач - интерактивное обучение Задачи обучения ставят, как в младшей ясельной группе детского сада, так и в Аспирантуре. Весь вопрос в том, как позиционировать этот форум, как ясельную группу, или хотя-бы как начальную школу?
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
Сообщений в этой теме
011119xx Как в си объявить массив с возможностью изменения его размера? Jul 7 2011, 03:36 V_G За Кейл не скажу, а в Винде делал указатель на ука... Jul 7 2011, 04:17 ukpyr без выделения памяти - никак, объявите массив макс... Jul 7 2011, 04:44 vvs157 Цитата(ukpyr @ Jul 7 2011, 08:44) без выд... Jul 8 2011, 09:47 XVR В C99 можно задать размер массива в момент его опи... Jul 7 2011, 05:55   XVR Цитата(zltigo @ Jul 8 2011, 11:53) Абсолю... Jul 8 2011, 08:05 011119xx Не могли бы привести код в качестве примера? Jul 7 2011, 08:27 skripach ЦитатаКак в си объявить массив с возможностью изме... Jul 7 2011, 13:49 GetSmart Цитата(011119xx @ Jul 7 2011, 08:36) Необ... Jul 8 2011, 08:01 011119xx Не много поправлюсь:
Кодuint16_t Buffer[50... Jul 8 2011, 08:06 zltigo QUOTE (011119xx @ Jul 8 2011, 11:06) Не м... Jul 8 2011, 08:27 AHTOXA Цитата(011119xx @ Jul 8 2011, 14:06) Это ... Jul 8 2011, 08:45  011119xx Цитата(AHTOXA @ Jul 8 2011, 14:45) Есть е... Jul 8 2011, 09:44   AHTOXA Цитата(011119xx @ Jul 8 2011, 15:44) В да... Jul 8 2011, 10:41    sergeeff Цитата(AHTOXA @ Jul 8 2011, 14:41) Если н... Jul 8 2011, 10:47     AHTOXA Цитата(sergeeff @ Jul 8 2011, 16:47) Ну н... Jul 8 2011, 10:55      sergeeff Цитата(AHTOXA @ Jul 8 2011, 13:55) Вы о ч... Jul 8 2011, 11:04       AHTOXA Цитата(sergeeff @ Jul 8 2011, 17:04) Уваж... Jul 8 2011, 11:28        sergeeff Цитата(AHTOXA @ Jul 8 2011, 14:28) А вы п... Jul 8 2011, 11:47         AHTOXA Цитата(sergeeff @ Jul 8 2011, 17:47) Это ... Jul 8 2011, 12:35          sergeeff Цитата(AHTOXA @ Jul 8 2011, 16:35) Кодint... Jul 8 2011, 16:02           AHTOXA Цитата(sergeeff @ Jul 8 2011, 22:02) P.S.... Jul 8 2011, 17:31 011119xx Не ожидал господа от вас таких ответов. Извините, ... Jul 8 2011, 08:29 zltigo QUOTE (011119xx @ Jul 8 2011, 11:29) Може... Jul 8 2011, 08:55  GetSmart Цитата(zltigo @ Jul 8 2011, 13:55) ...
Иб... Jul 8 2011, 09:05   zltigo QUOTE (GetSmart @ Jul 8 2011, 12:05) А по... Jul 8 2011, 09:11    ar__systems Цитата(zltigo @ Jul 8 2011, 05:11) Что пр... Jul 8 2011, 18:02 sergeeff Может автор ветки откроет великую тайну, зачем ему... Jul 8 2011, 08:30 011119xx Например в шрифте символы имеют разную ширину при ... Jul 8 2011, 08:49 sergeeff Цитата(011119xx @ Jul 8 2011, 11:49) Напр... Jul 8 2011, 08:53 GetSmart Цитата(011119xx @ Jul 8 2011, 13:49) Напр... Jul 8 2011, 08:55  sergeeff Цитата(GetSmart @ Jul 8 2011, 11:55) Для ... Jul 8 2011, 09:00   011119xx Цитата(sergeeff @ Jul 8 2011, 15:00) Вы, ... Jul 8 2011, 09:09    AHTOXA Цитата(011119xx @ Jul 8 2011, 15:08) Дело... Jul 8 2011, 09:11     011119xx Цитата(AHTOXA @ Jul 8 2011, 15:11) Вы слу... Jul 8 2011, 09:20    GetSmart Цитата(011119xx @ Jul 8 2011, 14:09) Дело... Jul 8 2011, 09:18     sergeeff Цитата(GetSmart @ Jul 8 2011, 12:13) Так ... Jul 8 2011, 09:19     011119xx Цитата(GetSmart @ Jul 8 2011, 15:18) Так ... Jul 8 2011, 09:35      GetSmart Цитата(011119xx @ Jul 8 2011, 14:35) Прич... Jul 8 2011, 09:42       sergeeff Цитата(GetSmart @ Jul 8 2011, 13:42) В ст... Jul 8 2011, 09:49        GetSmart Цитата(sergeeff @ Jul 8 2011, 14:49) А по... Jul 8 2011, 09:55        andron86 Цитата(sergeeff @ Jul 8 2011, 11:49) Указ... Jul 8 2011, 10:48         sergeeff Цитата(andron86 @ Jul 8 2011, 13:48) По м... Jul 8 2011, 10:55          andron86 Цитата(sergeeff @ Jul 8 2011, 12:55) Вы э... Jul 8 2011, 10:57 011119xx Это
Кодptr_buffer = &Buffer;
как раз и заносит... Jul 8 2011, 09:00 zltigo QUOTE (011119xx @ Jul 8 2011, 12:00) Это
... Jul 8 2011, 09:08  GetSmart Ничё не сделал, только вошёл И сразу мошенник.
С... Jul 8 2011, 13:42   zltigo QUOTE (GetSmart @ Jul 8 2011, 16:42) Себя... Jul 8 2011, 14:28    GetSmart Цитата(zltigo @ Jul 8 2011, 19:28) Если э... Jul 8 2011, 14:46 sergeeff Цитата(011119xx @ Jul 8 2011, 12:00) Это
... Jul 8 2011, 09:11  GetSmart Цитата(sergeeff @ Jul 8 2011, 14:11) А ... Jul 8 2011, 09:30   sergeeff Цитата(GetSmart @ Jul 8 2011, 13:30) Прав... Jul 8 2011, 09:37    GetSmart Цитата(sergeeff @ Jul 8 2011, 14:37) Что ... Jul 8 2011, 09:45     vvs157 Цитата(GetSmart @ Jul 8 2011, 13:45) Чему... Jul 8 2011, 10:02      GetSmart Цитата(vvs157 @ Jul 8 2011, 15:02) .. в с... Jul 8 2011, 10:15       vvs157 Цитата(GetSmart @ Jul 8 2011, 14:15) Пото... Jul 8 2011, 10:21       vvs157 Цитата(GetSmart @ Jul 8 2011, 14:15) Одна... Jul 8 2011, 10:24        sergeeff Цитата(vvs157 @ Jul 8 2011, 14:24) Это оч... Jul 8 2011, 10:32         zltigo QUOTE (sergeeff @ Jul 8 2011, 13:32) вмес... Jul 8 2011, 10:44       zltigo QUOTE (GetSmart @ Jul 8 2011, 13:15) Одна... Jul 8 2011, 10:40        GetSmart Цитата(zltigo @ Jul 8 2011, 15:34) Хвала ... Jul 8 2011, 10:41         zltigo QUOTE (GetSmart @ Jul 8 2011, 13:41) Но в... Jul 8 2011, 10:48          GetSmart Цитата(zltigo @ Jul 8 2011, 15:48) Кто зд... Jul 8 2011, 10:52          GetSmart Цитата(zltigo @ Jul 8 2011, 15:48) Это не... Jul 8 2011, 10:56           zltigo QUOTE (GetSmart @ Jul 8 2011, 13:56) zlti... Jul 8 2011, 13:31      ar__systems Цитата(vvs157 @ Jul 8 2011, 06:02) Вообще... Jul 8 2011, 18:11     zltigo QUOTE (GetSmart @ Jul 8 2011, 12:45) void... Jul 8 2011, 10:23      GetSmart Цитата(zltigo @ Jul 8 2011, 15:23) Замени... Jul 8 2011, 10:28  sasamy Цитата(sergeeff @ Jul 8 2011, 13:11) Хоть... Jul 8 2011, 12:01   ReAl Цитата(sasamy @ Jul 8 2011, 15:01) abc --... Jul 8 2011, 15:13    GetSmart Цитата(ReAl @ Jul 8 2011, 20:13) Речь-то ... Jul 8 2011, 15:32     ar__systems Цитата(GetSmart @ Jul 8 2011, 11:32) Я к ... Jul 8 2011, 18:25      zltigo QUOTE (ar__systems @ Jul 8 2011, 21:25) Э... Jul 8 2011, 18:32    sasamy Цитата(ReAl @ Jul 8 2011, 19:13) "Ой... Jul 8 2011, 15:41     zltigo QUOTE (sasamy @ Jul 8 2011, 18:41) ууу...... Jul 8 2011, 16:41      sasamy Цитата(zltigo @ Jul 8 2011, 20:41) А если... Jul 8 2011, 17:13       zltigo QUOTE (sasamy @ Jul 8 2011, 20:13) кроме ... Jul 8 2011, 18:06        ar__systems Цитата(zltigo @ Jul 8 2011, 14:06) Ну в э... Jul 8 2011, 18:15        AHTOXA Цитата(zltigo @ Jul 9 2011, 00:06) Код 5... Jul 8 2011, 18:49     ViKo Цитата(sasamy @ Jul 8 2011, 18:41) Хотя н... Jul 8 2011, 17:43      sasamy Цитата(ViKo @ Jul 8 2011, 21:43) Имя масс... Jul 8 2011, 18:06       ViKo Цитата(sasamy @ Jul 8 2011, 21:06) А вы в... Jul 8 2011, 18:28        ar__systems Я понял, откуда растет это волна негодования. Если... Jul 8 2011, 18:38         Danis Цитата(ar__systems @ Jul 8 2011, 22:38) Д... Jul 8 2011, 18:49         sonycman Цитата(ar__systems @ Jul 8 2011, 22:38) Д... Jul 8 2011, 18:52         zltigo QUOTE (ar__systems @ Jul 8 2011, 21:38) В... Jul 8 2011, 18:57          AHTOXA Цитата(zltigo @ Jul 9 2011, 00:57) Какая ... Jul 8 2011, 19:03      Danis Цитата(ViKo @ Jul 8 2011, 20:43) Имя масс... Jul 8 2011, 18:11 skripach ЦитатаА по поводу &abc можете почитать у отцов... Jul 8 2011, 10:08 skripach sasamy, поддержу. Jul 8 2011, 12:22 ViKo http://chitay.org/c/04/0409.htm
upd. и еще оттуда
... Jul 8 2011, 13:12 Danis Цитата(011119xx @ Jul 7 2011, 06:36) Необ... Jul 8 2011, 18:02 011119xx Keil не ругается на выражение
Кодptr_buffer = ... Jul 8 2011, 18:06 zltigo QUOTE (ar__systems @ Jul 8 2011, 21:02) С... Jul 8 2011, 18:21
2 страниц
1 2 >
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|