Verlinkte Liste in c (aus Datei lesen)

Ich bin sehr neu in der C-Programmierung und habe einige Schwierigkeiten. Ich versuche, Zeile für Zeile in eine Textdatei zu lesen und dann jede Zeile einer einfachen verknüpften Liste hinzuzufügen. Ich habe viel versucht, aber keine Lösung gefunden. Bisher kann ich in meinem Code aus der Datei lesen, aber ich verstehe nicht, wie ich den Text Zeile für Zeile speichern und zur verknüpften Liste hinzufügen kann.

Das ist, was ich bisher habe:

struct list {
char string;
struct list *next;
};

typedef struct list LIST;

int main(void) {

    FILE *fp;
    char tmp[100];
    LIST *current, *head;
    char c;
    int i = 0;
    current = NULL;
    head = NULL;
    fp = fopen("test.txt", "r");

    if (fp == NULL) {
        printf("Error while opening file.\n");
        exit(EXIT_FAILURE);
    }

    printf("File opened.\n");

    while(EOF != (c = fgetc(fp))) {
       printf("%c", c);
    }

    if(fclose(fp) == EOF) {
        printf("\nError while closing file!");
        exit(EXIT_FAILURE);
    }
    printf("\nFile closed.");
}

Wenn mir jemand Hinweise geben könnte, was ich als nächstes tun muss, damit es funktioniert, wäre ich sehr dankbar. Ich bin Java gewohnt und irgendwie kann mein Gehirn nicht verstehen, wie man diese Dinge in C macht.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage