Например вот сейчас такая задачка: выбрать тип оконной функции и передать программе номер выбора. Чтобы не городить вот такое
Код
GUI_DispStringAt("Select WINDOW FUNCTION for FFT", 40, 40);
GUI_DispStringAt("1 - Sine window", 20, 80);
GUI_DispStringAt("2 - Hann window", 20, 110);
GUI_DispStringAt("3 - Blackman window", 20, 140);
GUI_DispStringAt("4 - Hamming window", 20, 170);
GUI_DispStringAt("5 - Blackman–Nuttall window", 20, 200);
GUI_DispStringAt("0 and other Keys - Rectangular window", 20, 230);
GUI_DispStringAt("ESC - Return to A(t)-diagram", 20, 230);
GUI_DispStringAt("1 - Sine window", 20, 80);
GUI_DispStringAt("2 - Hann window", 20, 110);
GUI_DispStringAt("3 - Blackman window", 20, 140);
GUI_DispStringAt("4 - Hamming window", 20, 170);
GUI_DispStringAt("5 - Blackman–Nuttall window", 20, 200);
GUI_DispStringAt("0 and other Keys - Rectangular window", 20, 230);
GUI_DispStringAt("ESC - Return to A(t)-diagram", 20, 230);
хочу все строки поместить в один массив строк, чтобы сделать цикл вывода
Код
unsigned char NameOfFFTWindows[][] =
{
"1 - Sine window",
"2 - Hann window",
"3 - Blackman window",
"4 - Hamming window",
"5 - Blackman–Nuttall window",
"0 and other Keys - Rectangular window"
};
{
"1 - Sine window",
"2 - Hann window",
"3 - Blackman window",
"4 - Hamming window",
"5 - Blackman–Nuttall window",
"0 and other Keys - Rectangular window"
};
но компилятор требует, чтобы длина строки все таки была определена. Количество строк необязательно, но длину требует.
Вот так компилит
Код
unsigned char NameOfFFTWindows[][40] =
{
"1 - Sine window",
"2 - Hann window",
"3 - Blackman window",
"4 - Hamming window",
"5 - Blackman–Nuttall window",
"0 and other Keys - Rectangular window"
};
{
"1 - Sine window",
"2 - Hann window",
"3 - Blackman window",
"4 - Hamming window",
"5 - Blackman–Nuttall window",
"0 and other Keys - Rectangular window"
};
Но это же явный перерасход памяти. Как сделать, чтобы все было компактно?