私が持っているプログラムはファイルを読み取り、それに応じて表示しますが、内容を再度表示しようとすると、それらはなくなります。
構造:
typedef struct friends_contact {
char *First_Name;
char *Last_Name;
char *home;
char *cell;
} fr;
主要:
int main() {
fr friends[5];
char buffer[BUFFSIZE];
int counter = 0;
int i = 0;
menu(friends, &counter, i, buffer);
getch();
return 0;
}
ファイルを開くために使用されるメニュー関数の If ステートメント:
if (user_entry1 == 1) {
printf("Please enter a file name");
scanf("%s", user_entry3);
read = fopen(user_entry3, "r");
}
ユーザーがアドレス帳の連絡先を見ることを選択できるようにする if ステートメント。
if (user_entry == 4 ) {
print_contact(friends, counter, i, user_entry3);
if (user_entry1 == 1) {
file2(friends, counter, i, buffer, read);
}
}
読み取り機能:
char file2(fr *friends, int *counter, int i, char buffer[], FILE *read) {
while (fscanf(read, "%s", buffer) != EOF) {
friends[i].First_Name = malloc(BUFFSIZE * strlen(buffer));
strcpy(friends[i].First_Name, buffer);
return printf("\n""%s ", friends[i].First_Name);
}
fclose(read);
}
さらにコードを提供する必要がある場合。ファイルから連絡先リストにコンテンツを読み取らせて、表示、検索、または削除できるようにしようとしています。
PS他のコードのいくつかは完璧ではないかもしれないことを理解していますが、今はこれを理解することだけが心配です:)。