Цитата(GoodNews @ Mar 4 2010, 13:20)

А вот по поводу массива в структуре - потом просто взять определить массив отдельно как и в моём случае, только работать уже с полем? Т.е settings_t chan.Channel[] EEMEM = {...};
и соответственно settings_t nchan.Next_free_channel = {...};
Нет, определяете сразу всю структуру:
Код
settings_t EEMEM chan =
{ // структура
{ // массив
0, // Channel[0]
0, // Channel[1]
0, // Channel[2]
...
0, // Channel[49]
},
12345; // Free channel
};
Кстати, если можно не указывать явно последние нулевые элементы массива:
Код
settings_t EEMEM chan =
{ // структура
{ // массив
123, // Channel[0]
// все остальные элементы - нули
},
12345; // Free channel
};
Цитата(GoodNews @ Mar 4 2010, 13:20)

Кстати, *_t разве не зарезервировано под формат данных?
Нет. Просто один из многих стилей кодирования предполагает, что на _t оканчиваются названия новых (невстроенных) типов.