このコードは、入力され、ユーザーが編集できる保存されたtxtファイルを「開く」ことになっています。
たとえば、「Bob1234517」と「Max12345618」をsave.txtに保存しました...ファイルファイルを開いてリンクリストにすべてを印刷すると、「Max12345618」としか表示されません...プログラムを閉じて、最初にsave.txtを上書きせずに開こうとすると、リンクリストにすべてを印刷しても何も表示されません...
FILE* open;
char filenameopen[100];
printf ("\nType the name of the file you want to open: ");
scanf ("%s", filenameopen);
printf ("\n");
open = fopen (filenameopen, "r");
if (filenameopen == NULL)
printf ("No such file exists\n\n");
else
{
phonebook_t *openentry = (phonebook_t*) malloc (sizeof(phonebook_t));
openentry = head;
while (1)
{
fscanf (open, "%s %s %d", openentry -> name, openentry -> tel, &openentry -> age);
if (feof (open))
{
openentry -> next = NULL;
break;
}
openentry -> next = (phonebook_t*) malloc (sizeof(phonebook_t));
openentry = openentry -> next;
}
fclose(open);
}