[C] 파일입출력 fgetc fgets

C 2019. 12. 3. 01:22

1. 문자열을 하나씩 읽어서 콘솔창에 출력하기

#include <stdio.h>
int main(){
FILE *pt = fopen("abc.txt", "rt");
int ch; // fgetc는 반환형이 int형이기 때문에 int형으로 선언해줌

if(pt == NULL){
printf("파일열리지 않음");
return -1;
}
while((ch= fgetc(pt)) != EOF){ // fgetc는 파일 끝에 EOF를 반환한다.
printf("%c", ch); // 메모장에서 받은 문자를 ch에 저장하고 ch는 다시 문자로 변환해서 출력한다.
}
fclose(pt);
return 0;
}

// 답 cccxxx
// putchar(ch)로 출력해도 되지만 printf가 훨씬 실용적이다.

2. 문자열을 한줄씩 읽어서 콘솔창에 출력하기

#include <stdio.h>
int main(){
FILE *pt = fopen("abc.txt", "rt");
char ch[30]; // fgets는 반환형이 char*이다.
if(pt == NULL){ // fopen은 파일이 없다면 NULL을 반환한다.
printf("파일열리지 않음");
return -1;
}
while(fgets(ch, sizeof(ch), pt) != NULL){ // fgets는 파일 끝에 NULL을 반환한다.
printf("%s", ch);
}
fclose(pt);
return 0;
}

// 답 cccxxx
// 한줄씩 읽기 때문에 count를 하면 1이 나올 것이다.
// 엔터가 나오기 전까지 읽는다.

'C' 카테고리의 다른 글

[C] 파일 위치지시자 fseek  (0) 2019.12.03
[C] 파일입출력 fprintf fscanf  (0) 2019.12.03
[C] 파일입출력 fputc fputs  (0) 2019.12.03
[C] 포인터 배열과 배열 포인터  (0) 2019.12.03
[C] 이중 포인터  (0) 2019.12.03
블로그 이미지

ryancha9

https://blog.naver.com/7246lsy

,