C 프로그래밍이란?

2023. 12. 1. 07:08카테고리 없음

728x90
반응형

 

참고 : https://tcpschool.com/c/c_intro_programming

 

코딩교육 티씨피스쿨

4차산업혁명, 코딩교육, 소프트웨어교육, 코딩기초, SW코딩, 기초코딩부터 자바 파이썬 등

tcpschool.com

 

프로그래밍이란? :

목적에 맞는 알고리즘으로부터 프로그래밍 언어를 사용하여 구체적인 프로그램을 작성하는 과정이다.

 

 *알고리즘이란? :

컴퓨터가 따라 할 수 있도록 문제를 해결하는 절차나 방법을 자세히 설명하는 과정이다. 이를 자세히 설명하면 컴퓨터를 활용한 문제 해결 과정에서 주어진 문제를 해결하는 일련의 방법 또는 절차이며, 문제해결 방법을 순서대로, 절차대로 나열한 것이라고 볼 수 있다.

 

이렇게 작성된 프로그램은 먼저 실행 파일(executable file)로 변환되어야 실행할 수 있다.

C언어에서 실행 파일을 생성하는 순서는 다음과 같다.

 

 

1. 소스 파일(source file)의 작성

 

프로그래밍의 첫 순서는 프로그램을 작성하는 것이다.

C언어를 사용하여 문법ㅂ에 맞게 논리적으로 작성된 프로그램을 원시 파일 또는 소스 파일이라고 한다.

C언어를 통해 작성된 소스 파일의 확장자는 .c가 된다.

 

2. 선행처리기(preprocessor)에 의하나 선행처리

 

선행처리(preprocess)란 소스 파일중에서도 선행처리 문자(#)로 시작하는 선행처리 지시문의 처리 작업을 의미한다.

선행처리 작업은 선행처리기(preprocessor)가 수행한다.

선행처리기는 코드를 생성하는 것이 아닌, 컴파일하기 전 컴파일러가 작업하기 좋도록 소스를 재구성해주는 역할만을 한다.

 

3. 컴파일러(compiler)에 의한 컴파일

 

컴퓨터는 0과 1로 이루어진 이진수로 작성된 기계어만을 이해할 수 있다.

소스 파일은 개발자에 의해 C언어로 작성되므로 컴퓨터는 소스 파일을 바로 이해할 수 없다.

소스 파일을 컴퓨터가 알아볼 수 있는 기계어로 변환시켜야 하는데, 그 작업을 컴파일(compile)이라고 한다,

 

컴파일은 컴파일러에 의해 수행되며, 컴파일이 끝나 기계어로 변환된 파일을 오브젝트 파일(object file)이라고 한다.

이러한 오브젝트 파일의 확장자는 .o나 .obj가 된다.

 

4. 링커(linker)에 의한 링크

 

컴파일러에 의해 생성된 오브젝트 파일은 운영체제와의 인터페이스를 담당하는 시동 코드(start-up code)를 가지고 있지 않다.

대부분의 C 프로그램에서 사용하는 C 표준 라이브러리 파일도 포함되어 있지 않다.

이때 하나 이상의 오브젝트 파일과 라이브러리 파일, 시동 코드 등을 합쳐 하나의 파일로 만드는 작업을 링크(link)라고 한다.

 

 *라이브러리 파일이란? :

프로그래밍에 사용할 수 있게 미리 만들어져 있는 함수나 변수들의 묶음이다. 미리 컴파일된 오브젝트 파일 형태로 존재하며 링킹 과정에서 링킹되어 실행 가능한 프로그램을 이룬다.

 

링크는 링커(linker)에 의해 수행되며, 링크가 끝나면 하나이 새로운 실행 파일이나 라이브러리 파일이 생성된다.

이처럼 여러 개의 소스 파일을 작성하여 최종적으로 링크를 통해 하나의 실행 파일을 만드는 것을 분할 컴파일이라 한다.

 

5. 실행 파일(executable file)의 생성

 

최근 사용되는 개발 툴은 대부분 선행처리기, 컴파일러, 링커를 모두 내장하고 있으므로 소스 파일에서 한 번에 실행 파일을 생성한다.

실행 파일의 확장자는 .exe이다.

 

728x90
반응형