[25일차](홍정모의따배c)입출력버퍼
*본 강의수기는 교수님의 모든 ppt나 코드 화면을 붙인게 아닙니다. 따로 출처 표시나 과제표시
안한 모든 코드와 사진자료의 출처는 본 강의의 교수님 입니다.
정리는 다시한번 제가 보기위함과 어떤강의인지 알려드리는 것이고
제가 적은건 이해를 돕기 위한 부연설명과 제가 이해한 몇개의 중심적인 내용이 다소
생략이 되었습니다. 이 수기를 통해 공부하려 하지말고 흥미로운 내용이라면
'인프런- 홍정모의 따라하며 배우는c' 과정을 수강하시길 바랍니다.
버퍼란 무엇인가?
버퍼는 컴퓨터에서 입출력과정을 거칠때
입력하거나 출력할데이터를 저장하는 과정이다.
내가이해한게 맞다면 ..
버퍼과정이 없다면?
- 교수님코드
#include <stdio.h>
#include <conio.h>
int main()
{
char c;
while ((c = _getch()) != '.') //_getche
putchar(c);
return 0;
}
위 코드는 윈도우에서만 된다
conio헤더가 윈도우밖에 지원안한다.
흔히보던 getchar가 아니다 앞에 언더바도 있다.
버퍼링과정없이 문자를 그대로 출력하는 코드다.
컴파일하면
a를입력하면 a가 바로튀어나오고 h를입력하면 그뒤에 바로튀어나온다.
반면 버퍼를 거친
getchar는
\n를 입력받았을때 비로소 그전에 입력받은 문자를 출력한다.
- 교수님코드
#include <stdio.h>
//#include <conio.h>
int main()
{
char c;
while ((c = getchar()) != '.')
putchar(c);
return 0;
}
그리고 '.'을 입력받고 프로그램은 끝난다.