본문 바로가기
프로그래밍 언어/C언어

[혼자 공부하는 C언어] - Chapter 01 정리 및 문제 해결

by amobu0 2024. 6. 15.
혼자 공부하는 C언어 책 정리 및 발생하는 트러블 슈팅 해결

Chapter 01 프로그램 만들기

학습목표 

  • 프로그램은 무엇이고 C언어는 무엇일까
  • 컴파일러를 다운로드하고 설치해 보자
  • 프로그램을 직접 코딩하고 컴파일 및 실행하는 방법을 배우자.

책과 다른 내용 및 해결

책에서 알려준 경로가 아닌 다른 폴더의 경로에 first.exe 실행 파일이 생성됨. 시스템 명렁을 수행하는 함수 system("pause");가 아니였다면 결과 창이 순식간에 닫혀서 파일이 안 열리는 줄 알았을 것이다.

좌: 책에 나와있는 경로 / 우: 실제로 first.exe 파일이 생성된 경로
시스템 명령 수행 함수 system("pause");


1-1 프로그램과 C언어

핵심 포인트

  1. 프로그램은 일의 순서를 나열한 것이다.
  2. C 언어는 유닉스에 사용하기 위해 만들어졌다.
  3. 컴파일은 소스 코드를 컴파일러를 통해 컴퓨터가 이해하는 기계어로 만드는 과정이다.
  4. 비주얼 스튜디오는 다양한 컴파일러 중 하나이다.
  5. 컴파일하고 실행하기는 각각 Ctrl + Shift + B (컴파일)Ctrl + F5(실행) 단축키로 할 수 있다.

 

컴파일 과정 3단계

비주얼 스튜디오의 VC++ 컴파일러를 사용하면 메뉴 선택을 통해 쉽게 컴파일할 수 있다. 이런 컴파일 과정을 좀 더 자세히 살펴보면 3단계로 나눠진다. 전처리 - 컴파일 - 링크의 3단계이다.

 

1. 전처리 전처리preprocess과정은 전처리 지시자에 따라 소스 파일을 가공하는 과정이다. #include가 전치리 지시자이다. 보통 #include는 프로그램에 필요한 함수 중 외부에 있는 함수를 불러들인다. 전처리 과정은 주로 소스 파일을 컴퓨터에 맞게 편집하는 일이므로 전처리를 수행해도 파일의 형태는 달라지지 않는다.

 

2. 컴파일 전처리가 끝난 파일을 컴파일complie하면 개체 파일object file이 된다. 개체 파일은 CPU가 해석할 수 있는 명령어instruction들로 이루어진 기계어 파일이지만, 바로 실행하는 것은 불가능하다.프로그램 운영체제OS, Operating System에 의해서 실행되므로 개체 파일을 설치된 운영체제가 인식할 수 있는 형태의 실행 파일로 바꿔야 한다.

 

3. 링크 따라서 개체 파일에 startup code를 결합하는 과정을 수행하는데 이 과정을 링크link라 한다. startup code는 프로그램을 실행하기 전에 필요한 준비 작업을 수행하며 main함수를 호출해 우리가 작성한 프로그램의 코드가 실행되도록 한다. 따라서 항상 main함수가 있어야 한다. 

 

기계어 - 컴퓨터가 바로 이해할 수 있는 0과 1로 기호화해 표현한 언어

개체 파일 - 소스 파일이 컴파일된 후에 생성되는 파일로 바로 실행시킬 수 없는 파일

링크 - 개체 파일에 startup code를 붙여 실행 파일을 만드는 과정


 

Chapter 01 프로그램 만들기를 공부하였다. 학습목표를 따라서 C언어의 탄생 배경을 가볍게 읽었다. 바로 다음 내용으로 Visual Studio2022를 설치하고 책에 나와있는 예제 코드를 작성 후 컴파일과 실행을 하였다. 아직 낯설고 적응하기 힘들다.

 

https://m.hanbit.co.kr/store/books/book_view.html?p_code=B3773573071

 

혼자 공부하는 C 언어(개정판)

혼자 해도 충분하다! 1:1 과외하듯 배우는 C 프로그래밍 자습서

m.hanbit.co.kr