개발 환경 설정
C++ 컴파일러 소개
C++ 프로그램을 실행하기 위해서는 먼저 소스 코드를 기계어로 변환해야 합니다.
이 작업을 수행하는 것이 컴파일러입니다.
주요 C++ 컴파일러는 다음과 같습니다.
GCC (GNU Compiler Collection)
- 가장 널리 사용되는 오픈 소스 컴파일러
- Linux, macOS, Windows(MinGW) 등 다양한 플랫폼 지원
- 명령어 예 :
g++ -o myprogram myprogram.cpp
Clang
- LLVM 프로젝트의 일부로 개발된 컴파일러
- 빠른 컴파일 속도와 명확한 오류 메시지로 유명
- Apple의 Xcode에 기본 컴파일러로 채택
- 명령어 예 :
clang++ -o myprogram myprogram.cpp
Microsoft Visual C++ Compiler
- Windows 환경에 최적화된 컴파일러
- Visual Studio에 포함되어 있음
- 명령어 예 :
cl myprogram.cpp
통합 개발 환경 (IDE) 소개
IDE는 코드 편집, 컴파일, 디버깅 등의 기능을 통합적으로 제공하는 소프트웨어입니다.
주요 C++ IDE는 다음과 같습니다.
1. Visual Studio
- Microsoft에서 개발한 강력한 IDE
- 광범위한 기능과 확장성 제공
- 무료 버전(Community Edition) 사용 가능
2. Visual Studio Code
- 경량화된 코드 에디터이지만 확장을 통해 IDE 기능 구현 가능
- 다양한 언어 지원, 크로스 플랫폼
- C++ 개발을 위한 확장 팩 제공
3. CLion
- JetBrains사에서 개발한 크로스 플랫폼 C/C++ IDE
- 강력한 코드 분석 및 리팩토링 도구 제공
- 유료이지만 학생은 무료로 사용 가능
4. Eclipse CDT
- 오픈 소스 IDE
- 풍부한 플러그인 생태계
- 대규모 프로젝트 관리에 적합
개발 환경 설정 단계 (VSCode)
1. Visual Studio Code 설치
기타 항목은 모두 체크하는 것을 권장
- https://code.visualstudio.com 에서 다운로드 및 설치
2. C++ 확장 팩 설치
C/C++ 확장 설치
- VS Code 내에서 확장(Extensions) 탭 열기
- "C/C++" 검색 후 Microsoft의 확장 팩 설치
3. MinGW 설치 (Windows 환경)
- MSYS2 페이지에서 최신 설치 프로그램을 다운로드하거나 하이퍼링크를 통해 바로 다운로드할 수 있습니다.
- 설치 프로그램을 실행하고 설치 마법사의 단계를 따라 진행합니다. (win10 64비트 이상)
- msys2를 실행하고 아래 명령어를 입력합니다.
툴체인 그룹 설치 (Enter)
패키지 설치 (Enter)
Enter
를 눌러 툴체인 그룹의 기본 패키지 설치를 수락합니다.
4. 환경 변수 설정
- 시스템 환경 변수 편집 > 환경 변수 > Path > 편집
- MinGW의 bin 폴더 경로 추가
5. 프로젝트 폴더 생성 및 설정
- 새 폴더 생성 후 VS Code로 열기
.vscode
폴더 내에c_cpp_properties.json
,tasks.json
및launch.json
파일 생성 및 설정- (선택)
settings.json
및extensions.json
파일 생성 및 설정 - 해당 작업이 번거로우면 템플릿 다운받기
첫 번째 프로그램 작성 및 실행
1. 새 파일 생성 (예 : main.cpp)
2. 다음 코드 입력
3. 파일 저장
4. 터미널에서 다음 명령어 실행
빌드 과정 이해
C++ 프로그램의 빌드 과정은 다음과 같습니다.
1. 전처리 (Preprocessing)
- #include, #define 등의 전처리기 지시문 처리
- 매크로 확장
- 조건부 컴파일 처리
2. 컴파일 (Compilation)
- 전처리된 코드를 어셈블리 코드로 변환
- 문법 검사 수행
- 최적화 수행 (컴파일러 옵션에 따라)
3. 어셈블 (Assembly)
- 어셈블리 코드를 객체 파일(.o 또는 .obj)로 변환
4. 링킹 (Linking)
- 여러 객체 파일을 하나의 실행 파일로 결합
- 라이브러리 연결
- 메모리 주소 할당
디버깅 기초
디버깅은 프로그램의 오류를 찾고 수정하는 과정입니다. VS Code에서의 기본적인 디버깅 기능은 다음과 같습니다.
1. 브레이크포인트 설정
- 코드 라인 왼쪽 클릭으로 설정/해제
2. 변수 값 확인
- 디버그 모드에서 변수에 마우스 오버
- 'Watch' 창에서 변수 추가하여 지속적 모니터링
3. 단계별 실행
- Step Over (F10) : 현재 라인 실행 후 다음 라인으로 이동
- Step Into (F11) : 함수 내부로 진입
- Step Out (Shift+F11) : 현재 함수에서 빠져나옴
4. 콜 스택 확인
- 프로그램의 실행 경로 추적
버전 관리 시스템 소개
버전 관리 시스템은 소스 코드의 변경 사항을 추적하고 관리하는 도구입니다.
Git은 가장 널리 사용되는 버전 관리 시스템입니다.
1. Git 기본 개념
- Repository : 프로젝트의 모든 파일과 히스토리를 저장하는 저장소
- Commit : 변경 사항의 스냅샷
- Branch : 독립적인 작업 라인
2. 기본 Git 명령어
git init
: 새 저장소 초기화git add
: 변경 사항을 스테이징 영역에 추가git commit
: 변경 사항을 저장소에 기록git push
: 로컬 변경 사항을 원격 저장소에 업로드git pull
: 원격 저장소의 변경 사항을 로컬로 가져오기
3. GitHub 사용법
- 계정 생성
- 새 저장소 생성
- 로컬 저장소와 원격 저장소 연결
- 변경 사항 push 및 pull
연습 문제
- 여러분의 컴퓨터에 Visual Studio Code와 MinGW(Windows의 경우)를 설치하고 환경 변수를 설정하세요.
- "Hello, C++ World!" 프로그램을 작성하고 실행해보세요.
- 다음 코드를 입력하고 컴파일 해보세요. 오류가 발생한다면 그 이유를 설명하고 수정해보세요.
- 간단한 계산기 프로그램을 작성하세요. 사용자로부터 두 개의 숫자와 연산자(+, -, *, /)를 입력받아 결과를 출력하는 프로그램입니다.
참고자료
- "Professional C++" by Marc Gregoire
- Visual Studio Code 공식 문서 : https://code.visualstudio.com/docs
- Git 공식 문서 : https://git-scm.com/doc
- GitHub 학습 랩 : https://lab.github.com/