#define stdin (__acrt_iob_func(0))
* stdin또한 함수이다. 매개변수로 0이 들어가면 stdin, 1이 들어가면 stdout, 2가 들어가면 strerr이다.
* 반환형은 FILE* (stdin을 보면 FILE*형이란 것을 알아야 한다.)
◎ 반환형이 FILE*인 이유
* C언어는 Unix OS를 기준으로 설계되었다.
* Unix OS에서 여러 외부장치를 동일한 형식으로 관리하기 위해 외부장치를 파일처럼 열어서 읽고 쓰는 방법을 채택
* 다양한 외부장치마다 장치를 제어, 읽기, 쓰기를 하는 함수를 제공하면 함수가 너무 많아진다. 따라서 외부장치를 모두 동일한 형식으로 관리하는 것이 좋은데 Unix에서는 파일처럼 관리했다는 것.
반응형
'C' 카테고리의 다른 글
sprintf 함수와 fprintf 함수 (1) | 2020.11.20 |
---|---|
EOF와 fclose() 함수 (0) | 2020.11.14 |
FILE* fopen(const char* file, const char* filemode) (0) | 2020.11.09 |
#include <errno.h> (0) | 2020.11.09 |
stderr(Standard Error) (0) | 2020.11.08 |