Computer >> 컴퓨터 >  >> 프로그래밍 >> C++

C++ Hello, World! 프로그램 – 첫 번째 C++ 코드 작성법과 구조 완벽 이해

C++는 절차적 프로그래밍(procedural), 객체 지향 프로그래밍(object-oriented), 제네릭 프로그래밍(generic programming)을 모두 지원하는 범용 프로그래밍 언어입니다. C++는 C 언어의 상위 집합(superset)으로, 유효한 모든 C 프로그램은 C++에서도 그대로 컴파일되고 실행될 수 있습니다.

또한 C++는 데이터 은닉(data hiding), 캡슐화(encapsulation), 상속(inheritance), 다형성(polymorphism) 등 객체 지향 프로그래밍의 핵심 기능들을 폭넓게 지원합니다.

그럼 지금부터 "Hello, World!"라는 메시지를 화면에 출력하는, 가장 기본적인 형태의 첫 번째 C++ 프로그램을 살펴보겠습니다.

예제 코드

#include <iostream>
using namespace std;
int main() {
    cout << "Hello, World!" << endl; // Hello, World!를 출력합니다
    return 0;
}

위 프로그램을 실행하면 다음과 같은 결과가 출력됩니다.

실행 결과

Hello, World!

이제 위 프로그램을 구성하는 각 요소가 어떤 역할을 하는지 하나씩 자세히 알아보겠습니다.

헤더(Headers)

C++에는 다양한 헤더 파일이 존재하며, 각 헤더에는 프로그램 실행에 필요한 정보와 함수 선언들이 포함되어 있습니다. 이 예제에서 사용된 <iostream> 헤더는 C++ 프로그램에 기본적인 입력(input)과 출력(output) 서비스를 제공하는 표준 라이브러리 헤더입니다.

네임스페이스(Namespaces)

네임스페이스(namespace)는 이름 충돌을 방지하기 위해 비교적 최근에 C++에 도입된 기능입니다. 아래 문장은 컴파일러에게 표준 네임스페이스인 std를 사용하도록 지시합니다.

using namespace std;

이 문장이 있으면 std::cout처럼 매번 접두사를 붙이지 않고도 cout, endl 등의 표준 요소를 바로 사용할 수 있습니다.

main() 함수

C++ 프로그램의 실행은 main() 함수에서 시작됩니다. main() 함수는 모든 C++ 프로그램의 진입점(entry point) 역할을 하며, 운영체제가 프로그램을 실행할 때 가장 먼저 호출되는 부분입니다.

int main()

출력(Output)

다음 문장을 통해 화면에 "Hello, World!"라는 메시지를 출력합니다.

cout << "Hello, World!" << endl;

여기서 cout은 ostream 클래스의 객체(object)로, 표준 C 출력 스트림인 stdout과 연결되어 있으며, << 연산자(삽입 연산자)를 사용해 데이터를 출력 스트림으로 보냅니다. endl은 줄바꿈 문자를 출력하고 버퍼를 비우는 역할을 합니다.

주석(Comments)

C++에서 한 줄 주석(single-line comment)은 //로 시작합니다. 주석은 프로그램의 의도나 동작을 설명하여 코드를 더 쉽게 이해할 수 있도록 돕는 역할을 하며, 컴파일러는 주석 내용을 완전히 무시합니다. 위 프로그램의 주석은 cout 문이 어떤 일을 하는지 다른 개발자에게 명확하게 알려주기 위해 작성된 것입니다.

// This prints Hello, World!

return 문

return(0); 문은 main() 함수의 종료를 의미합니다. 이 문장이 실행되면 값 0이 프로그램을 호출한 프로세스(운영체제)로 반환되며, 관례적으로 0은 프로그램이 정상적으로 종료되었음을 나타냅니다.

컴파일 및 실행 방법

위 프로그램을 직접 실행해 보려면 GCC(GNU Compiler Collection)의 g++ 컴파일러를 사용할 수 있습니다. 소스 코드를 hello.cpp로 저장한 뒤, 터미널에서 다음 명령어를 입력하면 됩니다.

g++ hello.cpp -o hello
./hello

정상적으로 컴파일되었다면 화면에 "Hello, World!"가 출력되는 것을 확인할 수 있습니다. 이처럼 간단한 Hello, World! 프로그램은 C++의 기본 구조인 헤더 포함, 네임스페이스, main 함수, 출력 스트림, 주석, 반환값을 한눈에 익힐 수 있는 최고의 입문 예제입니다.