컴퓨터를 공부하고자 마음먹은지 N일차

[38일차](홍정모의따배c)텍스트파일읽기 본문

🖥C

[38일차](홍정모의따배c)텍스트파일읽기

졸린새 2020. 10. 16. 18:04
728x90

[38일차](홍정모의따배c)텍스트파일읽기

*본 강의수기는 교수님의 모든 ppt나 코드 화면을 붙인게 아닙니다. 따로 출처 표시나 과제표시

안한 모든 코드와 사진자료의 출처는 본 강의의 교수님 입니다.

정리는 다시한번 제가 보기위함과 어떤강의인지 알려드리는 것이고

제가 적은건 이해를 돕기 위한 부연설명과 제가 이해한 몇개의 중심적인 내용이 다소

생략이 되었습니다. 이 수기를 통해 공부하려 하지말고 흥미로운 내용이라면

'인프런- 홍정모의 따라하며 배우는c' 과정을 수강하시길 바랍니다.

  • 교수님코드
#include <stdio.h>
#include <stdlib.h>
int main()
{
    int c;
    FILE *file = NULL;
    char file_name[] = "my_file.txt";

    file = fopen(file_name, "r");
    if(file == NULL)
    {
        printf("Failed to open file.\n");
        exit(1);
    }

    while ((c = getc(file)) != EOF)
        putchar(c);
    fclose(file);

    return 0;
}

처음배우는 파일연결 개념이다

위에 file이라는 포인터를 정의했고, 초기값은 NULL로 지정되어있다.

my_file.txt 이라는 텍스트파일을 열어야하는데

밑에 if문에 file의 값이 NULL 즉 파일이 없다면

파일오픈이 실패했다는 문구가 뜨게 나온다.

실행해보자

파일을 아직 안만들었기 때문

재밌는것이

값을 1로 반환하면서 프로그램이 종료된다.

이게 exit때문인데

stdlib헤더에 있는것

괄호안에 있는 숫자를 반환하고

아예 프로그램을 종료시켜버린다

1말고 1004를 입력하면

1004를 뱉고 끝난다

일종의 유언장같은거라 생각하라고 하신다.

파일을 생성해보자

c파일이있는 경로에 파일을 생성한다.

중요한점은

    char file_name[] = "my_file.txt";

여기서 정한 파일이름과 무조건 동일하게 만들어줘야한다.

임의로 바꿔도 상관없다.

내용을 임의로 수정해주고

다시 실행시켜보자.

정상적으로 읽어들이는것을 확인할 수 있다.

Comments