Easyelectronics.ru

Электроника для всех
Текущее время: 16 дек 2019, 08:13

Часовой пояс: UTC + 5 часов



JLCPCB – Прототипы печатных плат за $2/10pcs (Любой цвет!)
Крупнейший производитель печатных плат и прототипов. Более 600000 клиентов и свыше 10000 заказов в день!
Получите скидку на почтовую отправку при первом заказе в JLCPCB!

Начать новую тему Ответить на тему  [ Сообщений: 8 ] 
Автор Сообщение
 Заголовок сообщения: Инициализация массива через #include "path"
СообщениеДобавлено: 02 май 2019, 19:53 
Заглядывает иногда
Аватара пользователя

Зарегистрирован: 16 окт 2014, 06:32
Сообщения: 56
Откуда: г. Черногорск Респ.Хакасия
Всем привет. Подскажите по синтаксису GCC (или trueSTUDIO не уверен кто отвечает за это). В общем есть проекты написанные в KEIL. Пытаюсь перетащить
на trueSTUDIO но вылазит ошибка при такой конструкции
Код:
const char pump[]=
#include "Bitmaps/pump.h"

Если возможность таким же способом инициализировать массивы в trueSTUDIO.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Инициализация массива через #include "path"
СообщениеДобавлено: 02 май 2019, 20:06 
Старожил

Зарегистрирован: 26 ноя 2012, 10:28
Сообщения: 4153
Откуда: КЧР, поселок Нижний Архыз
Да любой нормальный компилятор это проглотит. Но лучше, чтобы не запутаться, называть файл с данными как-нибудь иначе, например, pump.databitmaps. Либо делать отдельный сишный файл, где будет написано
Код:
const char pump[]= {данные}


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Инициализация массива через #include "path"
СообщениеДобавлено: 02 май 2019, 22:15 
Старожил
Аватара пользователя

Зарегистрирован: 22 июл 2017, 11:48
Сообщения: 3836
ну разве так можно песать?
#include "xx.h"

..а в файле xx.h
const char[] = {1, 2,3};


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Инициализация массива через #include "path"
СообщениеДобавлено: 02 май 2019, 22:37 
Заглядывает иногда
Аватара пользователя

Зарегистрирован: 16 окт 2014, 06:32
Сообщения: 56
Откуда: г. Черногорск Респ.Хакасия
Писать так можно и было написано много проектов( не мной) в каждом более 50 .h файлов с самими массивами. массивы были проинициализированы способом
как писал выше. Я знаю что можно все переписать как было сказано
Цитата:
#include "xx.h"

..а в файле xx.h
const char[] = {1, 2,3};

Но вопрос про то как все это исправить в trueSTUDIO с мин. переделками.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Инициализация массива через #include "path"
СообщениеДобавлено: 03 май 2019, 00:04 
Старожил

Зарегистрирован: 17 дек 2014, 04:38
Сообщения: 680
Да, чудны дела твои, господи !
Вы головой ударились больно ? Или как понимать выше сказанное ? После выше написанного, я начинаю понимать cheblin-а. Кто в хидерах описывает константы, да и вообще переменные ? Переменные и константы описываются в файлах *.с . А в хидерах extern char pump[];. Все имена (переменных, функций), которые заносятся в таблицу имен ВСЕГДА определяются в *.c файлах, а объявляются в хидерах.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Инициализация массива через #include "path"
СообщениеДобавлено: 03 май 2019, 12:34 
Старожил
Аватара пользователя

Зарегистрирован: 01 авг 2016, 10:47
Сообщения: 284
Откуда: Таганрог
ну когда идет работа с ЦОС, то коэффициенты для фильтров удобно из матлаба через файл.h передавать. во первых по названию видно что за фильтр, во вторых удобно пробовать с разными характеристиками.

Keil\SES проглатывают такой код:

q31_t g_nFirCoeffs32_DecimateSt1_uEeg[ND_DECIMATE] = {
#include "fir_32_16_kaiser_dec_1000_500.hex"
};

думаю что и trueSTUDIO скушает и ешё попросит


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Инициализация массива через #include "path"
СообщениеДобавлено: 03 май 2019, 15:26 
Старожил

Зарегистрирован: 08 авг 2013, 09:43
Сообщения: 2440
pvo125 писал(а):
Но вопрос про то как все это исправить в trueSTUDIO с мин. переделками.

Почитать как перестать стрелять себе в ногу на C, переделать нормально и больше не писать никогда такой говно-код.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Инициализация массива через #include "path"
СообщениеДобавлено: 03 май 2019, 17:25 
Старожил

Зарегистрирован: 17 дек 2014, 04:38
Сообщения: 680
Си это свобода, можно - все ! Но, что бы не "выстрелить себе в ногу", нужно придерживаться определенных правил построения кода. Си за ручку не водит и пальчиком не грозит, но это не значит что нужно совать гвоздик в розетку.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 8 ] 

Часовой пояс: UTC + 5 часов


Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB