我不知道如何处理这项任务。
我特别要使用fwrite,但我的问题是我不知道如何将不同的文件类型(char [],int,double)写入二进制文件中的一行,递增它,然后写入下一批数据从链表中增加它.....等等。
下面的代码将数据从链表(数据)写入文本文件,转到下一行并重复该过程,直到列表的最后一个元素被写入文本文件。
我需要编写一个具有相同原理但使用 fwrite 将链表中的数据写入二进制文件的函数。有什么想法吗?
void WriteTextFile(ListDataType *Data, int numEl)
{
FILE *textfile;
char name[50];
printf("\n\nWhat would you like to call the text file in which the data will be stored?\nNB remember to add \".txt\" after your chosen name!!!\nENTER NAME NOW>>");
scanf("%s", name);
textfile = fopen(name, "w+");
do
{
fprintf(textfile, "%s %d %d %.2lf %.2lf %.2lf %.2lf\n", Data->component.name, Data->component.int1, Data->component.int2, Data->component.double1, Data->double2, Data->double3, Data->double4 );
Data = Data->nextPtr;
}while(Data != NULL);
fclose(textfile);
}