реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> IAR ew динамический массив, чё за дела с динамическим массивом
a1ex
сообщение Mar 22 2008, 15:31
Сообщение #1





Группа: Новичок
Сообщений: 13
Регистрация: 29-11-07
Из: Jurmala
Пользователь №: 32 821



День добрый.
практикуюсь сейчас с MSP430f169 и вот ситуация следующая:
Хочу поработать с динамическим массивом. В программе для МК создаю глобальный динамический массив. В флеше K9F6408U0A у меня лежит некоторое кол-во символов, которые я хочу переложить в этот глобальный динамический массив и чтобы в этом массиве ничего кроме этих символов не было. В дебагере всё идёт без проблем. Всё отменно работает, НО если отключить питание и включить, то программа работает не корректно. Показывает что в этом динамическом массиве появляется всякий хлам. WHY ?
Код
unsigned char BUF1[]; // глобальный массив


Прикладываю source. Вот кто может на досуге почитает

Сообщение отредактировал a1ex - Mar 22 2008, 15:34
Прикрепленные файлы
Прикрепленный файл  flash.rar ( 2.22 килобайт ) Кол-во скачиваний: 53
 
Go to the top of the page
 
+Quote Post
vet
сообщение Mar 22 2008, 16:11
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 550
Регистрация: 16-06-04
Из: Казань
Пользователь №: 32



В языке С нет динамических массивов. Укажите число элементов явно.


--------------------
Главная линия этого опуса ясна мне насквозь!
Go to the top of the page
 
+Quote Post
rezident
сообщение Mar 22 2008, 16:18
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Это не динамический массив, а переменная типа unsigned char или если точнее ваше объявление эквивалентно
Код
unsigned char BUF1[1];
. Если хотите объявить массив, то указывайте явно его размер, либо инициализируйте сразу какими-либо значениями.
Go to the top of the page
 
+Quote Post
UniBomb
сообщение Mar 22 2008, 19:20
Сообщение #4


Частый гость
**

Группа: Свой
Сообщений: 148
Регистрация: 26-05-05
Пользователь №: 5 416



Ну иар позиционирует себя как С++ компилятор, то можно попробывать работать с контейнерами. Например может подойти vector.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Mar 22 2008, 19:35
Сообщение #5


Гуру
******

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



Цитата(UniBomb @ Mar 22 2008, 22:20) *
С++ компилятор...

Да хоть четыре плюса - без знания размеров объекта он инициализирован быть принципиально не может.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
a1ex
сообщение Mar 22 2008, 19:57
Сообщение #6





Группа: Новичок
Сообщений: 13
Регистрация: 29-11-07
Из: Jurmala
Пользователь №: 32 821



Припоминаю.. старые добрые контейнеры..
Цитата
можно попробывать работать с контейнерами. Например может подойти vector.

vector насколько я пытаюсь вспомнить именно такое св-во у них и было, ненужно указывать компилятору его размер.. и что размеру свойственно расширяться в отличии от обычного массива. Сам лично с ними ещё не работал, но знаю, что такие есть. Почитаю про них возможно это будет хорошая альтернатива спасибо! Но а пока, пришлось задать размер обычному массиву.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 16:31
Рейтинг@Mail.ru


Страница сгенерированна за 0.01375 секунд с 7
ELECTRONIX ©2004-2016