Разработка, производство и продажа радиоэлектронной аппаратуры
|
Карта сайта
|
Пишите нам
|
В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:
jobsmp@pochta.ru
Телесистемы
|
Электроника
|
Конференция «Микроконтроллеры и их применение»
Как сделать кошерно
Отправлено
Mty1
(78.107.11.34)
10 декабря 2010, г. 16:28
IAR AVR
В нескольких местах вызывается блок
{
char ustr[100];
sprintf ( ustr, "OK Scan %u \r\n", uiParam );
uart_usb_send_buffer( (U8*)ustr, strlen(ustr) );
}
Оформить в виде функции не могу - у sprintf разные параметры при разных вызовах.
2 вопроса -
1. можно ли оформить этот блок в виде #define
2. переменную ustr лучше обьявить один раз глобально, или объявлять ее в каждом блоке локально?
}
Составить ответ
|
Вернуться на конференцию
Ответы
эти параметры можно передавать в виде строки при вызове функции
-
a
(10.12.2010, 18:31:17
89.178.122.248
,
пустое
)
Не знаю как в иаре, но во многих современных компиляторах есть макросы с переменным числом параметров. Посмотрите в хелпе "variadic macros"
-
smb
(10.12.2010, 17:50:12
192.168.125.208,212.5.70.188
,
пустое
)
Вот тут есть, страница 176
-
smb
(10.12.2010, 17:54:48
192.168.125.208,212.5.70.188
,
пустое
,
ссылка
)
оформить как функцию с переменным числом параметров
-
Атмег
(10.12.2010, 16:39:34
217.148.217.186
,
пустое
)
Эх, не хотел я с такими функциями разбираться, да видать придется ... :)))
-
Mty1
(10.12.2010, 17:02:51
78.107.11.34
,
пустое
)
как в icc не знаю, я в gcc делаю так (+)
-
Атмег
(10.12.2010, 17:58:13
217.148.217.186
, 202 байт)
Уверены что это работает? у вас вызов sprintf явно неправильный - пишет в строку pFormat неясно что. Может работает, но это скорее случайность.
-
smb
(10.12.2010, 18:05:50
192.168.125.208,212.5.70.188
, 327 байт)
да, ошибся, у меня там vprintf()
-
Атмег
(10.12.2010, 18:35:48
217.148.217.186
,
пустое
)
а я п и не стал... лучше больше о потребительских свойствах конечного продукта нейроны загрузить - а как у тя в проге ето реализовано потребителю насрать...
-
basilmak
(10.12.2010, 17:24:53
178.177.47.66
,
пустое
)
Отправка ответа
Имя*:
Пароль:
E-mail:
Тема*:
Сообщение:
Ссылка на URL:
URL изображения:
если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
введите число 93:
Перейти к списку ответов
|
Конференция
|
Раздел "Электроника"
|
Главная страница
|
Карта сайта
Web
telesys.ru