C++/카루의 C++ 강좌

[카루의 C++ 강좌] 1-1. C++ 프로그램의 시작, main() 함수

카루-R 2020. 3. 20. 17:07
반응형

 C++ 프로그램에서, main() 함수는 특별한 존재로 취급받고 있습니다.

프로그램에 단 하나만 존재해야 하며, 반환값은 int이고 프로그램이 실행할 때 가장 먼저 실행되는 함수이죠.

(물론 이 말은 틀립니다.. 전역 클래스의 ctor가 더 먼저 실행이 되지만..)

저번 시간에 봤던 이 코드, 기억하시나요?

#include <iostream>

int main()
{
    std::cout << "Hello, world!" << std::endl;
    return 0;
}

int main() { ... } 이 블록을 통틀어서 main() 함수라고 부릅니다. 이때 main()함수는 크게 두 가지 형태를 갖습니다.

int main()
int main(int argc, char* argv[])

 소괄호 안에 있는 건 매개변수라고 부르는데, 일단 지금은 저기에 값을 넣을 방법이 없습니다. 저 매개변수는 운영체제한테서 값을 받아오는 애들이에요. 운영체제가 프로그램에게 값을 넘겨주고 실행하면 프로그램에서는 main() 함수가 호출되고, 프로그램이 시작되게 됩니다. 그리고 마지막 줄의 return 0; 을 만나면 운영체제에게 0이라는 값을 돌려주고, 프로그램은 종료됩니다. 일반적으로 0값은 정상적인 종료를 뜻합니다.

 main() 함수의 매개변수를 사용하는 건 C++ 심화 강좌에서 진행하겠습니다. 가능하면 '[C++ 강좌] 4-1. 함수의 선언과 정의, 재귀함수'까지 모든 강좌를 다 보고 익힌 후에 보신다면 더욱 좋겠네요.

 

1-1. 도전 과제

std::cout << "Hello, world!" << std::endl;

이제는 그나마 익숙한 문장이죠? Hello, world! 를 출력하는 문장입니다.

이 문장을 기반으로 다양한 것들을 출력해 볼 겁니다. 조금씩 바꾸어 가면서 아래 문제들을 하나씩 풀어보세요.

 

  1. HELLO, WORLD! 를 출력해 보세요.
  2. 자신의 이름을 출력해 보세요.
  3. 2020 을 출력해 보세요.
  4. 다음처럼 출력해 보세요:
즐거운 C++ 프로그래밍
오늘은 출력을 연습하고 있습니다.

 이번 시간이 실제 강좌의 처음이라 간단한 설명만 하고 마치겠습니다.

그럼 다음시간에 "문장과 주석, 중괄호와 블록"에 대한 내용으로 찾아뵙겠습니다.

반응형