본문 바로가기

Software/C언어

[C언어] 기본 입출력 함수

728x90

* 문자 입출력 함수

 

- 라이브러리 = 함수들을 모아놓은 집합

 

- SDK(Software Development Kit) = 개발하는 데 도움이 되는 각종 함수를 모아놓은 라이브러리 + 몇몇 개발 도구 =>                                                 하나의 패키지로 묶은 개발환경

 

- getchar() 함수

: 사용자가 키보드로 입력한 문자 혹은 문자열에서 한 글자를 읽어서 반환

 

표준입력장치(키보드)의 입출력 버퍼에서 문자를 읽어옴.

버퍼에 문자가 채워져 있다면 문자를 읽어서 반환, 비어있다면 키보드 입력을 기다린다.

 

- putchar() 함수

: 문자를 모니터 화면에 출력하는 함수

 

결국, 두 함수는 각각 문자의 입력과 출력 기능 제공

 

ex)

#include <stdio.h>

void main()
{
char ch;
ch = getchar();
putchar(ch);
ch = getchar();
putchar(ch);
ch = getchar();
putchar(ch);
}

 

 

- getch() / getche() 함수

getchar() 함수와 기능적, 결과적으로 매우 유사.

getchar() 함수는 문자나 문자열을 입력받아 버퍼에 저장한 후 한문자씩 꺼내서 처리 <-> getch() 함수는 정말 문자 하나만 입력받음 + 버퍼를 거치지 않음

 

키보드 입력 시 즉시 처리

 

ex)

#include <stdio.h>
#include <conio.h>

void main()
{
char ch;

ch = _getch();
printf("%c\n", ch);

ch = _getche();
printf("%c\n", ch);
}

 

<결과값>

 

두 함수의 다른 점은 사용자가 입력한 키보드의 값을 화면에 출력하는지 여부.

getche() 함수의 이름에서 마지막 e는 echo를 의미.

getche() 함수는 사용자가 입력한 키보드의 값을 화면에 출력.

 

getch(), getche() 함수는 프로그램을 종료할 것인지 질의하려고 사용자로부터 y와 같은 영문 한 글자를 입력받을 때나, '아무 키나 누르세요'와 같이 메세지를 출력하고서 프로그램의 흐름을 일시적으로 멈출 때 주로 사용.

 

getch(), getche() 함수 선언은 conio.h 헤더 파일에 포함되어 있음.

728x90