Есть некоторая функция comparestr (), которая в качестве аргументов принимает два указателя на строки. Если входные строки одинаковы -- возвращает ноль. Для наглядности:
Code: Select all
error = comparestr (&COMMANDS, &buffer);Code: Select all
while (i <= 6)
{
error = comparestr (COMMANDS[i], &buffer);
if (error == 0) break;
i++;
} Сейчас описываю массив так:
Code: Select all
/*Constants-------------------------------------- */
//-------------- Команды ---------------
const uint8_t SET_TIME[] = "settime\r";
const uint8_t SET_TELEPHONE[] = "settelephone\r";
const uint8_t SET_NUMBER[] = "setnum\r";
const uint8_t SET_SCHEDULE[] = "setschedule\r";
const uint8_t SHOW_SETTINGS[] = "showsettings\r";
const uint8_t SAVE_SETTINGS[] = "save\r";
const uint8_t *COMMANDS[6] = {SET_TIME,
SET_TELEPHONE,
SET_NUMBER,
SET_SCHEDULE,
SHOW_SETTINGS,
SAVE_SETTINGS};Заранее благодарю
P.S. Использую STVD + Cosmic