코딩테스트 Intro/C
[C언어] feof, 문자 문자열 단위 파일 복사 프로그램
아기사우르스
2023. 4. 14. 09:57
728x90
[feof 함수 기반의 파일복사 프로그램]
파일의 끝을 확인하기 위해 이 함수가 필요
#include <stdio.h>
int feof(FILE*stream);
파일의 끝에 도달한 경우 0이 아닌 값 반환
파일 입력 함수는 오류가 발생하는 경우에도 EOF를 반환
[문자 단위 파일복사 프로그램]
int main(void) // 문자 단위 파일복사 프로그램
{
FILE*src=fopen("stc.txt", "rt");
FILE*des=fopen("dst.txt", "wt");
int ch;
if(src==NULL || des==NULL) {
puts("파일오픈 실패!");
return -1;
}
while(!ch=fgetc(src))!=EOF)
fputc(ch, des);
if(feof(src)!=0)
puts("파일복사 완료!");
else
puts("파일복사 실패!");
fclose(src);
fclose(des);
return 0;
}
[문자열 단위 파일복사 프로그램]
int main(void)
{
FILE * src=fopen("src.txt", "rt");
FILE * des=fopen("des.txt", "wt");
char str[20];
if(src==NULL || des==NULL) {
puts("파일오픈 실패!");
return -1;
}
while(fgets(str, sizeof(str), src)!=NULL)
fputs(str, des);
if(feof(src)!=0)
puts("파일복사 완료!");
else
puts("파일복사 실패!");
fclose(src);
fclose(des);
return 0;
}
src에 저장된 문자열이 des로 복사되는 것이다.
728x90