Сохранение значений в текстовом формате легко:
int writeTextData(double* v, int length, FILE* fh)
{
assert( fh!=NULL );
fprintf(fh, "%d\n", length);
for(int i=0;i<length ;i++)
if(fprintf(fh, "%lf ", v[i]) <= 0)
{
printf("Error, can't save the matrix!");
return(0);
}
return(1);
}
Сохранение длины с последующими числами длины.
XML лучше пишется с помощью библиотеки.
Хотя такой простой набор данных может быть сохранен в XML вручную (через fprintf), все более сложное потребует от вас сложного кодирования / экранирования и очень подвержено ошибкам, если вы не разбираетесь в XML - как уже было сказано, вам лучшеиспользовать библиотеку (например, libxml)