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

 
 
 
Reply to this topicStart new topic
> Решено частично #define var to str
Trashy_2
сообщение Jan 22 2018, 13:39
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 254
Регистрация: 27-10-08
Пользователь №: 41 220



Вечер добрый.
Запутался в дефайнах.
Дефайном определено число 48 как dWorkLine .
Далее, другим дефайном хочу состряпать строку, в которую входит число 48 в виде текста.
Должно получиться так: "\e[48;1H" с возможностью менять 48 на любые другие числа.
Вызов должен быть без передачи переменных или констант в таком виде sComandLine().
Код
#define dWorkLine  48
#define svComandLine(vROW_Z) Serial2.print("\e["#vROW_Z";1H");

В таком виде не работает:
Код
#define sComandLine() svComandLine(dWorkLine)


Так работает:
Код
#define sComandLine() svComandLine(48)


В общем, как заставить работать первый вариант?

вопрос снят

Заменил
Код
#define dWorkLine  48

на
Код
#define dWorkLine  48+6

И трындец.

Сообщение отредактировал Trashy_2 - Jan 22 2018, 14:53


--------------------
Транзистор не сможет измерить широкое сердце героя!(ц)
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение May 2 2018, 20:09
Сообщение #2


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



Цитата(Trashy_2 @ Jan 22 2018, 16:39) *
В общем, как заставить работать первый вариант?


я полагаю так:
Код
#define _svComandLine(vROW_Z) Serial2.print("\e["#vROW_Z";1H");
#define svComandLine(vROW_Z) _svComandLine(vROW_Z)



--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 18th April 2024 - 19:22
Рейтинг@Mail.ru


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