C++은 입출력을 다음과 같이 한다. 이런 입출력 방식은 연산자 오버로딩을 사용하는데, 위의 예는 istream 의 겍체인 cin, ostream 의 겍체인 cout 에 대해 >>연산자, <<연산자가 오버로딩 되 있는 것이다.
이를 구현하려면 input,output 클래스를 만들고, 연산자 오버로딩만 하면 된다. 공부를 위해 만드는 것이니 stdio.h 의 getchar() 함수와 putchar()함수만 사용해서 만든다.
소스코드가 너무 길어서...(5000자가 넘어서) 첨부만 하도록 하겠다. 첨부파일 iosteam_cpy.h 파일 다운로드 기존의 cin,cout과 using namespace std;를 적었을때 이름 충돌을 막기 위해서 conout,conin으로 선언했다.
또 마지막에 클래스 str_com의 겍체인 combine 도 만들었는데 이는 sprintf 비슷한 느낌이다. ex) <<연산자 를 거치며 combine안의 string클래스 변수에 값이 추가된다. 또 get 함수...
원문 링크 : C++ cin,cout 구현