반응형
C언에서 출력을 하고 싶을 때, 우리는 printf() 함수를 이용했습니다. C++에서는 std::cout을 이용합니다.
헤더 파일은 C++ 헤더인 iostream을 include 해줍니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | #include <iostream> int main() { int kor, math, eng, sum; double avg; kor = 100; math = 98; eng = 79; sum = kor + math + eng; avg = sum / (double)3; std::cout << "총점 : " << sum << std::endl; std::cout << "평균 : " << avg << std::endl; return 0; } | cs |
국어, 수학, 영어 세 과목의 점수를 더해서 sum 변수에 넣고, 평균을 구해서 avg 변수에 넣습니다.
그리고 총점과 평균을 출력합니다.
std::cout << "총점 : " << sum << std::endl; 은 C언어의 printf("총점 : %d\n", sum); 과 같습니다.
std::cout은 출력을 해주고, std::endl은 개행 문자를 삽입해줍니다.
앞에 쓰는 std::는 std라는 namespace 안의 cout과 endl을 사용한다는 뜻입니다.
std::endl이 없다면 총점 : 277평균 : 92.3333으로 출력됐을 것입니다.
using?
std::를 계속 붙여주는 것은 번거로운 일입니다. 그래서 쓰는 키워드가 using인데요.
using namespace std; 라고 한다면,
main 함수 내에서 알아서 std 안에 존재하는 이름들을 참조할 수 있게 됩니다.
하지만 충돌할 가능성이 있으니 using std::cout; 이렇게 해주는 게 좋다고 합니다.
1 2 3 4 5 6 7 8 9 10 11 12 | #include <iostream> using namespace std; int main() { int a[5] = { 1,2,3,4,5 }; char str[16] = "Hello world!"; cout << a[3] << endl; cout << str << endl; return 0; } |
using 키워드를 이용해서 std를 불러왔습니다. 그래서 cout과 endl을 std:: 없이 쓸 수 있게 됩니다.
a[3]에 있는 4가 출력되고, 배열의 주소를 넘겨주니 문자열 "Hello world!"가 다 출력된 것을 볼 수 있습니다.
반응형
'Programming > C++' 카테고리의 다른 글
[C++] 함수 (0) | 2018.01.21 |
---|---|
[C++] 구조체 (0) | 2018.01.21 |
[C++] 동적 할당 (0) | 2018.01.21 |
[C++] 명시적 형변환 (0) | 2018.01.21 |
[C++] std::cin? (0) | 2018.01.21 |