내가 정리하는 C/C++ 00

개발환경 구축하기

C와 C++

1) C++는 기본적으로 C의 기능을 확장한 형태의 프로그래밍 언어이다.
2) 따라서 C 언어의 기능을 포함하고 있다는 점에서 C++프로젝트로 .C 확장자를 갖는 파일을 생성하여 코딩해도 정상적으로 동작한다.

개발환경 구축하기

  • 나는 개인적으로 IDE(Integrated Development Environment) 중에서 Atom을 이미 설치하고 있기에 따로 대표적인 Visual Studio를 설치하진 않았다.

  • Atom에서는 따로 gpp-compiler 라는 패키지를 설치해주면 끝난다! 단축키 또한 자신이 커스터마이징 할 수 있는데, 나는 default인 f5가 compile f6이 디버깅으로 되어있는 상태에서 사용할 것이다.

Development_environment

  • 전통적인 프로그램은 전처리기 -> 컴파일러 -> 링커를 거쳐 실행파일로 만들어진다.

역시! 모든 언어의 기초를 배울때 하는 Hello World를 언급하며 시작해보자!

1
2
3
4
5
6
7
8
#include <stdio.h>

int main(void) {
printf("Hello world\n");
// system("pause");
system( "read -n 1 -s -p \"Press any key to continue...\"" );
return 0;
}

명령문 하나하나씩 설명을 하자면 처음, #include 명령어를 이용해 다양한 라이브러리를 불러 올 수 있다. 위에서 불러온 stdio.h(standard io)는 여러 기본적인 기능을 포함하고 있지만 그 중 대표적으로 위에서 사용한 printf가 있다.main함수는 다양한 함수가 사용 될 수 있겠지만 처음 시작할 때는 main함수 이후에 사용한다. 또한 가장 큰 특징은 함수는 반환값이 없을 수도 있지만 main 함수에서는 항상 0을 반환하는 것이 일반적이다. 나와 같이 R과 python으로 프로그래밍을 배운 사람이라면 ;이 낯설을 것이다. C/C++에서는 하나의 명령어가 끝났음을 알리기 위해 ;을 붙인다. 위의 명령 프롬프트에서 pause 명령어를 실행시키면 키보드를 입력 전까지 대기하는 기능을 사용할 수 있다. system 함수를 이용하여 운영체제의 기본적인 기능을 이용할 수 있다. 허나, 나의 mac북은 window의 프롬프트 창과는 다른 운영체제이므로 당연히 pause가 걸리지 않는다! 실행하면 찾을 수 없는 명령어라고 나오므로 약간의 편법으로 구사할 수 있을 것 같다! 혹시라도 mac에서 pause를 걸려한다면 저런식으로 만들어 보는 방법도 있다.