0
這是用於類的項目。 (C語言)將整數讀入鏈表
我遇到了需要實現的first function
問題。這是一個加載函數,我在其中輸入文件名,在運行時打開用戶給出的文件,並從每行上帶有整數的文件中讀取鏈接列表格式。
我與how to create the linked list
卡住,以便它們都實際鏈接,沒有same node in the list being overwritten each time
。
這是我到目前爲止,我知道這是不正確的。
#include"sortingheaders.h"
#include <stdio.h>
#include<stdlib.h>
#include<time.h>
///////////////////////////////
Node* List_Create(Node * ln)
{
if(ln==NULL)
{
ln = malloc(sizeof(Node));
ln->value = 0;
ln->next = NULL;
}
return ln;
}
/////////////////////////////////////////////////////////////////////////////
Node* Load_File(char *Filename)
{
//Open file
FILE* fptr = fopen(Filename, "r");
Node* ln=NULL;
Node* temp=NULL;
long int *x = 0;
//Validity Check, return 0 if unsuccesful
if(fptr ==NULL)
{printf("File didnt open!"); return 0;}
ln= List_Create(ln);
while(!feof(fptr))
{
fscanf(fptr,"%li",x);
ln->value = *x;
ln->next = List_Create(temp);
return(ln);
}
至少需要'long int x'和'ln-> value = x'。 – jthill
並且你從循環內部返回,並且你沒有檢查fscanf是否工作。 – jthill
只需在調用List_Create()之前將'temp = NULL'添加到while循環中,這樣節點就不會重疊。爲什麼你把循環中的return()? – moeCake