윤성우 열혈 C++ 프로그래밍 기반의 C++ 공부용도 글
확장자
.cpp : C++문법규칙을 적용한 C++컴파일러로 컴파일되도록 해줌
입출력
입출력을 위해서는 iostream 이라는 헤더 파일이 필요하며, 다음과 같이 선언한다
#include <iostream>
* C언어에서 printf(출력) , scanf(입력)을 위해 <stdio.h>를 선언하는 것과 같다
이때, 헤더파일의 확장자는 .h (iostream.h)이나, 표전 헤더파일의 선언에서는 확장자를 생략하기로 약속했다!
이유
- 표준 라이브러리가 변화하면서, 과거와 새로운 표준 라이브러리를 구분하기 위해
- 새로운 표준 라이브러리를 사용하는 형태로 소스코드를 쉽게 변경할 수 있도록 하기 위해
→
#include <iostream.h> 로 사용되었으면, 과거 표준 라이브러리
#include <iostream> 으로 사용되었으면, 새로운 표준 라이브러리 로 통용된다.
하지만, 프로그래머가 직접 정의한 헤더파일에서는 .h를 생략하지 않는다.
출력
* c언어에서의 출력
printf("%d", number);
c++에서의 출력
std::cout<<'출력대상';
c언어와 다르게 %s, %d와 같이 출력포맷을 지정하지 않아도 적절하게 출력이 이루어진다.
"<<"는 연산자 이므로, 연이은 출력이 가능하다.
std::cout<<'1'<<'2'<<'3';
줄바꿈
<<std::endl;
<<연산자를 이용한 std::endl;의 출력은 개행을 의미
이 연산자들이 무엇을 의미하고, 자료형을 어떻게 적절하게 지정하는지는 훗날 설명하도록 한다.
입력
*c언어에서의 입력
scanf("%d", &number);
c++에서의 입력
int number;
std::cin>>number;
">>"와 std::cin을 사용한다.
키보드로 부터 입력을 받아 변수에 저장한다는 의미이다.
출력과 마찬가지로 별도의 포맷지정이 필요없다.
">>"또한 연산자이다.
int A, B;
std::cin >> A >> B;
가능함.
이 때, 입력시 데이터간 경계는 Tab, spacebar, Enter키 입력과 같은 공백에 의해 나누어진다.
참고
C언어는 지역변수의 선언이 항상 제일 먼저 등장해야 하지만, (C언어의 새로운 표준에서는 어디든 삽입이 가능하게 변화하였다)
C++의 지역변수 선언은 함수 내 어디든 삽입이 가능하다
'LANGUAGE > C C++' 카테고리의 다른 글
[C/C++] 비트마스크(BitMask) (0) | 2021.09.23 |
---|---|
컴파일러 분석 (0) | 2021.03.24 |
[c/c++] 빌드(build)란? + Visual C++ (0) | 2020.09.19 |