C언어 문자열 3 문자 입출력 라이브러리
title: “C언어 문자열 3 문자 입출력 라이브러리” categories:
-
C
#C언어 문자열 3 문자 입출력 라이브러리 : 네이버 블로그
전 포스팅으로 문자와 문자열에 대해 알아보았다.
이번 포스팅으로는 문자와 문자열의 입출력 라이브러리에 대해 알아보겠다.
문자 입출력 라이브러리
문자 입출력 라이브러리는 보통 %c 형식 지정자를 사용하며 문자 하나를 대상으로 한다.
우리가 잘 알고있는 printf(“%c”,c);와 scanf(“%c”,&c)도 문자 하나를 대상으로하는 문자 입출력 라이브러리다.
그 밖의 함수들은 아래에 정리하였다
int getchar(void) | 하나의 문자를 읽고 반환한다 |
int _getch(void) | 버퍼를 사용하지 않고 하나의 문자를 읽고 반환한다 |
void putchar(int c) | 변수 C에 저장된 문자를 출력한다 |
void _putch(int c) | 버퍼를 사용하지 않고 변수 C에 저장된 문자를 출력한다 |
여기서 우리는 버퍼의 차이를 알아야한다.
아래는 버퍼의 차이를 알 수 있는 예제이다
#include
#include
int main() {
int ch;
printf("putchar(ch) 실행 q를 누르면 종료\n");
while ((ch = getchar()) != 'q') //\_getch로 바꿔서 해보세요
{
putchar(ch);
}
printf("\_putch(ch) 실행 w를 누르면 종료\n");
while ((ch = getchar()) != 'w') //\_getch로 바꿔서 해보세요
{
\_putch(ch);
}
}
_을 쓰기 위해서는 conio.h 헤더가 필요하다
버퍼가 있다면 입력을 받고 엔터가 눌릴 때까지 버퍼에 저장한다. 그러나 _putch같이 버퍼가 없으면 엔터가 눌리지 않아도 바로 실행된다.
버퍼에 따라 응답성, 문자수정여부같은 차이점이 생긴다. 버퍼를 적절이 사용하자.
다음은 포스팅에서는 문자열의 입출력 라이브러리에 대해 알아보겠다