파일을 읽지 만 구조체에 저장하지 않는 프로그램이 있습니다. 일단 데이터가 읽혀지면, 프로그램이 나중에 상기 데이터를 사용할 수 있도록 구조 내에 저장되어야한다. 이 일을 처리하는 방법을 알아내는 시간을 가지고 있습니다. 필요에 따라 판독 파일포인터로 가득 찬 구조체에 데이터 저장
void ReadFile(fr *friends, int *counter, char buffer[], FILE *read) {
fseek(read, 0, SEEK_SET);
while (fscanf(read, "%s", buffer) != EOF) {
friends[*counter].First_Name = malloc(BUFFSIZE * strlen(buffer));
strcpy(friends[*counter].First_Name, buffer);
}
}
추가 정보
구조
typedef struct friends_contact {
char *First_Name;
char *Last_Name;
char *home_phone;
char *cell_phone;
} fr;
제공 할 수있다. 정보가 구조 내에 저장되지 않아서 나중에 호출 할 수있는 이유를 알아 내고 싶습니다.
왜 '카운터'를 포인터로 만들었습니까? 또한'ReadFile'의 본문에서'contacts'를 사용합니까? – dst2
저장 코드가이 질문에 대답하는 데 상당히 도움이 될 것입니다. – WhozCraig
@dtidmarsh 유감스럽게도 그 유형이'contacts'는'friends' 여야합니다. –