Recommanded Free YOUTUBE Lecture: <% selectedImage[1] %>

<a href="/modules/moniwiki/wiki.php/manSearch?google=none&name=getc">getc</a>(3)

1장. getc(3)

차례
1.1절. 사용법
1.2절. 설명
1.3절. 반환값
1.4절. 예제

단일 문자를 입력받는다.


1.1절. 사용법

#include <stdio.h>

int getc(FILE *stream);
		


1.2절. 설명

stream으로부터 단일 문자를 입력받아서 되돌려준다. stream를 여러번 검사하는 매크로 함수로 구현되어 있다는 점을 제외하고는 fgetc(3)과 동일하다.


1.3절. 반환값

읽어들인 문자를 int 로 형변환하여 반환한다. 아무런 문자도 입력받지 못하거나 파일의 마지막에 도착했거나, 에러가 발생했을경우 NULL 을 반환한다.


1.4절. 예제

#include <stdio.h>

#include <string.h>

// 아규먼트가 없을경우 표준입력으로 부터 문자를 입력 
// 받아서 화면에 출력한다. 
// 아규먼트가 있을경우 아규먼트문자열을 이름으로 가지는 
// 파일을 열어서 문자를 읽어들이고 결과를 출력한다.  
int main(int argc, char **argv)
{
    FILE *stream_in;
    int c;

    if (argc == 1)
    {
        stream_in = stdin;
    }
    else if (argc == 2)
    {
        stream_in = fopen(argv[1], "r");
        if (stream_in == NULL)
        {
            perror("file open error : ");
            return 1;
        }
    }

    while((c = getc(stream_in)) != EOF)
    {
        printf("%c", c);
    }
    if (argc == 2)
    {
        fclose(stream_in);
    }
    return 0;
}