0

LinkedListファイルファイルから実装する必要があり.csvます。私のノードは次のように定義されています。

struct NODE {
    char username[50];
    char password[50];
    char usertype[50];
    struct NODE *next;
} *head=NULL;

ファイル全体.csvを という 1D 配列に入れましたdatabase。次に、sscanfこの配列を作成し、対応する各単語をノード内の特定のフィールドに配置します。次のコードを書き留めています。

void createList() {
    // I need a while-loop here //
    struct NODE* toAdd = (struct NODE*)malloc(sizeof(struct NODE));
    sscanf(database, "%[^','],%[^','],%[^'\n']", toAdd->username, toAdd->password,     toAdd->usertype);
    if (add(toAdd) == false) {
        printf("Error: was unable to initialize password validation!");
        exit(EXIT_FAILURE);
    }
}

私のadd関数は次のようになります。

BOOLEAN add(struct NODE *p) {
    if (p == NULL)   return false;
    if (head == NULL) {
        p->next = NULL;
        head = p;
    } else {
        p->next = head;
        head = p;
    }
    return true;
}

上記の機能に何か問題がありますか?要約すると、配列から読み取りたいと思います。この配列を 3 ワード ブロックに「分割」し、最初の配列をノードのユーザー名フィールドに割り当て、2 番目の配列をパスワード フィールドに割り当てます。配列全体でこれを行いたいので、大きな 1 つのブロックを作成します。LinkedListノードの。

ご協力ありがとうございました。

4

0 に答える 0