テキストファイルの内容を構造体にロードしようとしています。
私のアイデアは次のようになります。
2つのファイル、、および1つstruct.h
のmain.c
ファイルがありlist.txt
ます。
ファイル内struct.h
:
struct analg {
char word[6];
char signature[6];
};
struct analg h[106];
FILE *fp;
ファイル内main.c
:
#include<stdio.h>
#include "struct.h"
void load() {
fp = fopen("list.txt", "r");
if(fp == NULL) {
printf("fail");
return 1;
}
else {
printf("file loaded!\n");
}
fclose(fp);
return;
}
void print() {
int i;
for(i=0; i<1000; i++) {
while(fgets(h[i].word, 6, fp)) {
printf("%s", h[i].word);
}
}
return;
}
int main () {
int choice;
do {
printf("choose L or P: ");
scanf("%s", &choice);
switch(choice) {
case 'l':
load();
printf("\n[l]oad - [p]rint\n");
break;
case 'p':
print();
printf("\n[l]oad - [p]rint\n");
break;
default:
break;
}
} while(choice!='q');
return;
}
ファイル内list.txt
:
throw
timer
tones
tower
trace
trade
tread
そこで、構造体に「L」を押してテキストファイルをロードしようとすると、「p」を押すと表示されますが、表示されません。