У меня есть таблица, определяющая внешний вид символов на дисплее с разрешением 5x7 точек. Что-то типа:
extern UINT8 symbols[][5] = {
{0x0,0x0,0x0,0x0,0x0},
{0x0,0x0,0x5F,0x0,0x0},
{0x0,0x7,0x0,0x7,0x0},
{0x14,0x7F,0x14,0x7F,0x14}, // etc.
Начальная часть таблицы соответствует таблице ASCII, за которой следует набор специальных символов, например. стрелку или галочку. Чтобы сослаться на них, у меня есть список макросов:
#define SYMBOL_LEFT_ARROW 120 // 120 is the entry in the table
#define SYMBOL_RIGHT_ARROW (SYMBOL_LEFT_ARROW+1)
#define SYMBOL_UP_ARROW (SYMBOL_RIGHT_ARROW+1)
Теперь мне нужно сказать что-то вроде (не будет компилироваться):
const char * const message = "Next" + SYMBOL_RIGHT_ARROW;
Вопрос: как преобразовать SYMBOL_RIGHT_ARROW
в "\x79" или всю строку в "Next\x79"
ВО ВРЕМЯ КОМПИЛЯЦИИ, чтобы я мог иметь строку в разделе R/O?
C-компилятор Freescale HC08.