Как я могу # определить строку без знака char*?

У меня есть следующее определение в моем коде

#define PRODUCTNAME     "SomeName"

и я хочу отправить его с функцией com_reply(unsigned char* msg, uint16_t lenght),

Теперь я получаю предупреждение, что мой аргумент отличается подписью. Я знаю, в чем проблема, а также почему com_reply использования unsigned char* вместо char*, Я просто хочу знать:

Как я могу определить мою строку как unsigned char* так что я могу использовать его в своей программе, не получая предупреждений повсюду.

РЕДАКТИРОВАТЬ:

Строго говоря, у меня есть несколько определений здесь, и главная причина в том, что есть BANNER определение, которое состоит из нескольких других определений, как это:

#define PRODUCTNAME     "SomeName"
#define PRODUCTDATE     "2013-03-30"
#define BANNER          PRODUCTNAME " (" PRODUCTDATE ")"

Должен ли я создавать константные переменные и объединять их при запуске программы вместо использования определений здесь?

1 ответ

Решение

Это должно работать:

#define PRODUCTNAME     ((const unsigned char *)"SomeName")
Другие вопросы по тегам