Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум разработчиков электроники ELECTRONIX.ru _ Программирование _ Решено частично #define var to str

Автор: Trashy_2 Jan 22 2018, 13:39

Вечер добрый.
Запутался в дефайнах.
Дефайном определено число 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

И трындец.

Автор: demiurg_spb May 2 2018, 20:09

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


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


Русская версия Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)