설명 된 다른 대답과 마찬가지로 구조체 배열을 만들면됩니다.
당신은 struct
정의 일단 : 문자와 숫자를 포장 등의 불필요한 것 2 차원 배열을 사용하여
record_t records[26]; /* 26 letters in alphabet, can be anything you want */
:
typedef struct {
char letter;
int number;
} record_t;
그런 다음이 같은 구조체의 배열을 만들 수 있습니다 struct
의 경우 처리하기가 쉽습니다.
파일을 읽는 측면에서 값을 찾을 수 없을 때까지 fscanf()
으로 읽을 수 있습니다. 여기
당신이 사용할 수있는 몇 가지 기본 코드 :
#include <stdio.h>
#include <stdlib.h>
#define NUMLETTERS 26
typedef struct {
char letter;
int number;
} record_t;
int main(void) {
FILE *fp;
record_t records[NUMLETTERS];
size_t count = 0;
fp = fopen("letters.csv", "r");
if (fp == NULL) {
fprintf(stderr, "Error reading file\n");
return 1;
}
while (fscanf(fp, " %c,%d", &records[count].letter, &records[count].number) == 2) {
count++;
}
for (size_t i = 0; i < count; i++) {
printf("%c,%d\n", records[i].letter, records[i].number);
}
fclose(fp);
return 0;
}
예는 다소 중복 질문, 그리고 난이 일을하기 전에 포럼을 살펴했다. 나는 아직도 그것을 얻지 않는다. – mac