%%getchar()/putchar() 함수
int getchar(void);
인자 : 없음
반환값 : 입력문자 하나 OR 에러 발생시 EOF 반환
동작 : 표준입력장치(stdin)로부터 문자 한 글자를 읽어와 반환한다,
만약 표준입력장치의 버퍼가 비워있으면 입력을 받은 뒤 첫번째 문자를 반환하고
버퍼가 차있을 시 버퍼에 저장된 문자를 반환한다
*반환값이 int인 점 주의
*char와 int는 크기만 다를 뿐 같은 정수 형식이다.
int putchar(int num);
인자 : num 출력할 문자 상수
반환값 : 출력 문자 하나, 에러 발생시 EOF 반환
동작 : 표준출력장치(stdout)인 콘솔(Console)에 한 글자를 출력
%%_getch()/_getche() 함수
getchar() 함수와 사용 방법이나 기본 기능은 같지만 getchar()의 경우 버퍼에 입력 값을 저장 한 뒤 불러 오지만
getch(), getche()함수는 어떤 키가 눌렸는지에 대해 감지하는 목적이 크다.
즉 버퍼를 거쳐오지 않고 즉시 전달된다.(Non-buffered I/O).
그러므로 사용자가 여러 문자를 입력한 뒤 하나씩 꺼내 처리할 수 없다. 어떤 키가 하나라도 눌리면 입력된 정보를 반환한다.
*_getch()를 사용하려면 conio.h를 include해주어야 함
*_getch()는 POSIX 표준을 준수하지 않았기 때문에 함수 이름 앞에 _를 붙여준다.
%%gets()/puts() 함수
char *gets(char *buffer);
인자 : buffer 입력받은 문자열을 저장할 메모리 주소
반환값 : 잘작동했을 시 인자로 전달받은 메모리 주소, 에러 발생시 NULL
동작 : 표준입력장치(stdin)에서 문자열을 입력받은 함수
*버퍼 오버플로우(overflow)에 의한 보안 결함 존재, gets_s로 대체
int puts(const char *string)
인자 : string : 저장된 메모리의 주소
반환값 : 정상적이면 음수가 아닌값, 에러발생시 EOF 반환
동작 : 표준출력장치(stdout)에 문자열을 출력하는 함수
*puts 함수는 printf함수와 달리 자동으로 개행한다.
*매개 변수가 포인터
*가장 전형적인 입출력 함수
출처 : 독하게 시작하는 C프로그래밍
'Programming > C & C++' 카테고리의 다른 글
C프로그래밍_main(int argc, char* argv[])_main Function Parameter (0) | 2016.03.27 |
---|---|
C프로그래밍_gets와 scanf 사용시 주의점 (0) | 2016.01.13 |
IEEE 754 표준 - 부동소수점 자료 표현 (float, double) (0) | 2016.01.12 |
C++ 스터디 05 : 다형성, virtual, 함수의 포인터, call back (1) | 2015.07.30 |
C++ 스터디 04 : 객체의 동적 할당(new-delete), scope(::)연산자, namespace (0) | 2015.07.30 |