Есть ряд параметров, которые я решил задать в виде массива, длина которого может быть разной.
Для доступа к одному из массивов параметров определил переменную, которой присваиваю адрес одного из массивов: float * curTimeInterval[]; При компиляции получаю ошибку : storage size isn't known
Научите пожалуйста как выбрать нужный массив с параметрами и извлекать из него значения?
static float TimeImterval1[] PROGMEM = {0.2,0.2,0.2,2};
static int TimeImterval1N PROGMEM = 4;
static float TimeImterval2[] PROGMEM = {0.2,0.2,0.2,0.5,0.2,2};
static int TimeImterval2N PROGMEM = 6;
float * curTimeInterval[];
int curLength;
_ticker.detach();
switch (curTickPGM)
{
case 2:
curTimeInterval = &TimeImterval2;
curLength = TimeImterval2N;
break;
default:
curTimeInterval = &TimeImterval1;
curLength = TimeImterval1N;
break;
}
А что скрывается за PROGMEM ?
А так - все просто:
static float TimeImterval1[] = {0.2f,0.2f,0.2f,2f};
static int TimeImterval1N = size(TimeImterval1);
static float TimeImterval2[] = {0.2f,0.2f,0.2f,0.5f,0.2f,2f};
static int TimeImterval2N = size(TimeImterval2);
float * curTimeInterval;
case 2:
curTimeInterval = TimeImterval2;
curLength = TimeImterval2N;
break;
default:
curTimeInterval = TimeImterval1;
curLength = TimeImterval1N;
break;
Уберите скобки.
float * curTimeInterval;
Продвижение своими сайтами как стратегия роста и независимости