1. 프로그래밍 언어란? ¶
- 프로그래밍 언어는 사람과 컴퓨터의 중간 언어입니다.
[PNG image (88.09 KB)]
- 사람이 이해하기 쉬울수록 high level, 컴퓨터가 이해하기 쉬울수록 low level이라고 하죠.
- high level language에는 Python, Java 등이 있고 low level language에는 assembly, 기계어(0과1)가 있습니다.
- C는 high level language이지만 다른 high 언어에 비해서는 상대적으로 low 쪽에 가까운 언어이죠.
그래서 프로그램 실행 속도가 빠릅니다.
- 컴파일러는 프로그래밍 언어를 기계어로 변환해주는 프로그램이에요.
2. C코드는 어떻게 .exe가 되나 ¶
- Visual Studio에서 F5를 틱 누르면 프로그램이 휘리릭 실행되는데요,
사실 그 간단한 동작에는 이렇게 복잡한 과정이 들어가 있습니다.
[PNG image (18.34 KB)]
- 컴파일은 여러분이 작성한 .c파일을 기계어로 변환하는 과정입니다. 여기서 .obj 라는 기계어 파일이 생깁니다.
- 그러나 그 기계어 파일에는 빈 곳이 있지요. 링크는 그 빈곳을 매워주는 과정입니다.
#include<stdio.h>의 stdio.h 파일이 이 과정에서 include가 되지요.
링크가 끝나면 비로소 .exe 파일이 생성됩니다.
- 그런데 막상 exe파일을 실행해보니 내가 코드를 잘못 작성했는지 결과가 제대로 나오질 않습니다.
그럴 땐 코드를 다시 살펴보면서 버그를 잡아야겠죠. 이 과정을 디버깅이라고 부릅니다.
- 컴파일과 링크 과정을 합쳐서 빌드(build)라고 부릅니다. 단축키는 F7.