랜덤 액세스 파일 DATA.data의 레코드를 배열 allRecs [10]에 넣으려면 어떻게해야합니까?랜덤 액세스 파일의 레코드를 C 프로그래밍 언어의 배열에 저장하는 방법은 무엇입니까?
/*Reading a random access file and put records into an array*/
#include <stdio.h>
/* somestruct structure definition */
struct somestruct{
char namn[20];
int artNr;
}; /*end structure somestructure*/
int main (void) {
int i = 0;
FILE *file; /* DATA.dat file pointer */
/* create data with default information */
struct somestruct rec = {"", 0};
struct somestruct allRecs[10]; /*here we can store all the records from the file*/
/* opens the file; exits it file cannot be opened */
if((file = fopen("DATA.dat", "rb")) == NULL) {
printf("File couldn't be opened\n");
}
else {
printf("%-16s%-6s\n", "Name", "Number");
/* read all records from file (until eof) */
while (!feof(file)) {
fread(&rec, sizeof(struct somestruct), 1, file);
/* display record */
printf("%-16s%-6d\n", rec.namn, rec.artNr);
allRecs[i].namn = /* HOW TO PUT NAME FOR THIS RECORD IN THE STRUCTARRAY allRecs? */
allRecs[i].artNr = /* HOW TO PUT NUMBER FOR THIS RECORD IN THE STRUCTARRAY allRecs? */
i++;
}/* end while*/
fclose(file); /* close the file*/
}/* end else */
return 0;
}/* end main */
숙제? 그렇다면 태그를 붙이십시오. – shank