Такой неприятный вопрос
Есть массив структур, все поля которых - не ссылки
Тупо сохраняю это в файл
write(file, (char)(a), sizeof(struct s)*a_length); // примерно так
а потом также тупо считываю
read(file, a, sizeof(struct s)*a_length); // примерно так
Все работает, но закрадываются подозрения, что в один прекрасный день может сломаться, поскольку где-то читал про выравнивание данных в памяти, и что так сохранять нельзя