iostream.h와 stdio.h의 차이는 뭔가요?
글쓴이: HotPotato / 작성시간: 화, 2003/07/15 - 5:41오후
:shock: 제가 C를 배운지 얼마 안되었을 때 C에서 표준 입출력 함수를 쓸 때
주로 아래와 같은 형식으로 쓰는 것을 당연한 걸로 보아왔습니다.
#include <stdio.h> int main() { printf("문장"); }
그러다가 언젠가 C++를 공부하기 위해 구입한 모 출판사의 C++도서에는
이전에 배웠던 "stdio.h"에 "printf()" , "scanf()" 대신 아래와 같은 형식을 따르는 것을 보았기에, :
#include <iostream.h> int main() { cout << "문장"; }
C++에선 대신 "iostream.h"에 "cin()", "cout()"을 쓰는 것이라고 여겨왔습니다. (문법도 왠지 유닉스의 쉘 스크립트를 닮은 듯 했고요.) 그런데, 학교에서 VC++를 배울 때 보니까, 제가 책에서 보았던 "iostream",".."은 안쓰고 일반 C언어처럼 "printf()"류의 함수를 그대로 쓰더군요.
그래서 잠시 궁금해하다가 한동안 모른채하고 살아왔는데 오랜만에 게시판에서 유사한 형태를 보니 궁금증이 다시 유발해서 이렇게 감히 여쭤보는 바입니다.
(질문이 너무 초보적인 내용 같아서 읽어주시는 분들에게는 여간 미안하지 않은것 같습니다.)
Forums:
고민하지 마시고, 도구는 C++까지 지원하지만, 사용은 C로 하는 경우라
고민하지 마시고, 도구는 C++까지 지원하지만, 사용은 C로 하는 경우라고 생각하세요. 포크레인으로 도랑친다고 생각하셔도 좋고, 덤프트럭으로 사람1명 옮긴다고 생각하셔도 좋겠네요. 현존하는 C++컴파일러는 C의 모든 기능은 기본적으로 지원합니다.
------------------ P.S. --------------
지식은 오픈해서 검증받아야 산지식이된다고 동네 아저씨가 그러더라.
printf()
C++에서도 <stdio.h>를 include 하면 printf()함수를 사용할수가 있지요..
그리고 cin, cout는 함수가 아님니다. 클래스 객체이지요..
<< 등의 연산은 내부에 연산자재정의에 의한 함수를 만들어서 실행하는것입니다.
사족...C++ 표준 헤더파일#include <c
사족...
C++ 표준 헤더파일
#include <cstdio> // stdio.h 대신...
#include <iostream> // iostream.h는 비표준...
단!! 위의 함수는 std의 네임스페이스를 사용합니다.
using namespace std;
_____________________________
언제나 맑고픈 샘이가...
http://purewell.biz
댓글 달기