파일 (몇 문장의 텍스트)에서 텍스트를 읽고 모든 고유 한 문자를 써야합니다. 그렇게하려면 배열을 사용해야합니다. 나는이 코드를 작성했지만 나에게 아무것도주지 않는다.파일에서 텍스트를 배열로 배열하는 방법
#include <stdio.h>
int main(void) {
int i;
FILE *in = fopen("test.txt", "r");
if (in) {
char mas[50];
size_t n = 0;
int ch;
while ((ch = getc(in)) != EOF) {
mas[n++] = (char)ch;
}
fclose(in);
}
for (i = 0; i < 50; i++) {
printf("%c", mas[i]);
printf("\n");
}
return 0;
}
실제로 mas'가'의 printf에 정의되어 있지 않습니다'나타내는 컴파일 오류가 발생한다 'char mas [50]'는'if' 문 블록 내에서만 정의되기 때문에 "% c", mas [i])'명령문을 사용하십시오. – lurker
이 하나가 고정되었습니다. 이제는 약간의 결과물을 보여 주지만, 이해할 수는 없으며 숫자 만 포함하고 텍스트의 문자는 포함하지 않습니다. – rimasbimas
왜냐하면'mas'의 50 가지 요소를 모두 인쇄하기 때문입니다.하지만 파일에서 50 문자를 읽지 못할 수도 있습니다. 나머지'mas' 엔트리는 단지 랜덤 메모리 내용입니다. 읽은 문자 수를 추적하고 그 수만큼만 인쇄하십시오. 예를 들어,'if' 블록 밖에서'size_t n' 선언을 넣으면'n'을 카운트로 사용하고'for (i = 0; i
lurker