我正在尝试打开一个文件并传递给struct我,我正在使用fscanf()循环,但它只保存struct最后一次读取:
想象一个文件:
JR John Rambo 24353432
JL John Lennon 6435463
Run Code Online (Sandbox Code Playgroud)
我正在使用此代码:
typedef struct people{
char code[10];
char name[100];
long telephone;
}PEOPLE;
int read(PEOPLE people[], int n_p){
char temp;
FILE *fp;
fp=fopen("example.txt","r");
if(fp==NULL){
printf("Error\n");
return -1;
}
while(!feof(fp)){
fscanf(fp,"%s %s %s %d\n", people[n_p].code,people[n_p].name,
&people[n_p].telephone);
}
}
Run Code Online (Sandbox Code Playgroud)
问题是他只保存文件的最后一行......我应该做一个if cicle吗?
另一个问题是我如何分隔一个类似的文件,但用";"
c ×1