2. Hello, World!

2.1. Programs

컴퓨터들과 교류하기 위해서는 엄밀하고 정확하게 정의된 프로그래밍 언어가 필요하다.

2.2. The classic first program

#include <iostream>

int main() {
    std::cout << "Hello, World!\n"; // output "Hello, World!"
    return 0;
}

위의 프로그램은 Hello, World!를 출력한다. int main()은 모든 C++ 프로그램이 필수로 포함하면서 실행하는 함수이다. “Hello, World!\n”은 문자열이다. std::cout은 표준 출력 스트림이다. << 은 출력 스트림에서 문자열을 출력한다. #include <iostream>은 std::cout을 사용하기 위해 포함하는 지시자이다. return 0;은 프로그램의 정상 종료를 알린다. // output “Hello, World!”는 주석이다. 프로그램의 코드는 컴파일러가 읽을 것과 동료 프로그래머가 읽을 것을 모두 고려해야 함을 잊지 말라.

2.3. Compilation

C++은 컴파일 언어이다. 프로그램이 실행되기 위해서는 인간이 읽을 수 있는 소스 코드에서 기계가 이해할 수 있는 실행 파일 코드로 번역되어야 한다. 이 번역 과정을 컴파일이라고 하며 컴파일을 해 주는 프로그램을 컴파일러라 한다. 컴파일러에게 인간의 상식같은 것은 없기 때문에 컴파일러는 디테일이 조금이라도 틀린 것을 받아들이지 않는다.

2.4. Linking

컴파일된 소스 파일 (번역 단위) 각각이 실행 파일이 되기 위해서는 링커에 의해 링크되어야 한다. 이 과정에서 라이브러리를 포함시키기도 한다. 컴파일러에 의해 발견된 에러를 컴파일 에러라고 한다. 링커에 의해 발견된 에러를 링크 에러라고 한다. 프로그램이 실행되기 전까지 발견되지 못한 에러를 런타임 에러 또는 논리 에러라고 한다. 런타임 에러보다는 컴파일 에러나 링크 에러가 더 잡기 쉽다.

2.5. Programming environments

생산성을 위해 IDE같은 통합 개발 환경을 쓰는 것이 좋다.

답글 남기기

아래 항목을 채우거나 오른쪽 아이콘 중 하나를 클릭하여 로그 인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Google photo

Google의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Twitter 사진

Twitter의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

%s에 연결하는 중