Перейти к содержанию
    

Константные строки в IAR

Не подскажете как в IAR объявить константную строку в которую можно вставить к примеру адреса переменных или функций? Т.е. по сути как сделать аналог асмовского построения строки из нескольких кусков непрерывно следующих один за другим?

Хотя-бы а-ля такое:

str: .db `test`,$A2,`test2`

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не подскажете как в IAR объявить константную строку в которую можно вставить к примеру адреса переменных или функций? Т.е. по сути как сделать аналог асмовского построения строки из нескольких кусков непрерывно следующих один за другим?

Хотя-бы а-ля такое:

str: .db `test`,$A2,`test2`

 

void F1(void)
{
    PORTD.OUTSET=3;
}
void F2(void)
{PORTD.OUTSET=1;}

typedef void (*FuncPtr) (void);
__flash FuncPtr FuncTable[2]=
{
    F1,
    F2
};

__flash FuncPtr F=F1;

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

:blink: Не, как объявлять строки, как объявлять указатели на функции и как с ними работать я и сам знаю. Вопрос как одну строку объявить из нескольких кусков строк(само собой кусок не должен завершиться 0) и чисел (частный случай такого числа - указатель на функцию). Как-то криво объявлять строки по-символьным массивом из наборов букв.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ЗЫ. Собственно что я хочу сделать. Хочу формализировать описание строчных шаблонов. Создать строки-шаблоны в которых была информация не только о том, что искать, но и информация о том, как и чем части найденного потом обрабатывать. Или более простой вариант - выходные (не поисковые) строчные шаблоны с указанием какие параметры(из каких переменных) куда вставлять.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну просто строки склеивать легко:

const char * test = "STRING1" "STRING2";

А вот байты...

Ну разве что вот так:

const char * test = "STRING1" "\x1B" "STRING2";

:)

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...