Если вы время от времени перемещаете данные из MATLAB в C, проще всего было бы записать их в двоичный файл, а затем прочитать из файла в C. Это, конечно, оставляет код C полностью независимым от MATLAB.
Это не должно быть настолько запутанным, если ваша структура данных представляет собой просто массив ячеек из регулярных массивов, например,
a{1} = zeros(1,5);
a{2} = zeros(1,4);
Вы можете просто написать заголовок для каждой ячейки, а затемданные в файл.В приведенном выше случае это будет:
[length{1} data{1} length{2} data{2}]
В указанном выше случае:
5 0 0 0 0 0 4 0 0 0 0
Если массивы двумерные, вы можете расширить это, написав: row, column, затемданные в основном порядке строк для каждой ячейки.
Это может быть не совсем удобно, но должно быть достаточно простым.Вы также можете сохранить его как файл .mat и прочитать его, но я бы не рекомендовал бы это.Гораздо проще поместить его в двоичный формат в MATLAB.
Если вам нужно перемещать данные чаще, чем это удобно для файла, есть другие варианты, но все, что я могу придумать, связано сMATLAB в некотором роде.