C 프로그램 실행과정

언어로그/C/C++ 2011. 2. 22. 11:17



C프로그램 컴파일 - 실행

C언어로 작성된 프로그램은 .c 라는 확장자를 갖는다. 이를 소스파일이라 부르며 이 소스파일이

실행파일로 최종적으로 변환이 된다.  소스파일은 먼저 전처리기(preprocess)에 의해 읽혀지어, 컴파일 전에

특정한 작업이 수행된다. (소스 일부분이 삽입되거나 대체되는 것 같은...) 전처리기에 의해 읽혀진 컴파일러에 의해

머신에 맞는 기계어 (혹은 어셈블리어)로 변환이 되어 목적파일을 생성하게 된다. 이 목적파일은 링커에 의해

 해당 프로그램에서 참조하고 있는 파일들을 삽입하여 완전한 실행파일을 생성하게 된다. 
실행파일은  사용자가 실행을 하는 순간 운영체제에서 지원하는 Loader(적재기)에 의해 메모리가 올라가 실행되게 된다.

 

소스파일(.c)  > [Preprocessor, Translator] > 목적파일 (.o) > [Linker] > 실행파일(.exe) > [Loader]

 

이와 같이 C 프로그램이 생성되는 코딩, 디버깅, 컴파일, 배포 과정을 통일된 하나의 툴에서 제공해주는

프로그램이 IDE(통합개발환경)이다. 대표적인 IDE로 Visual Studio 가 있다.


Visual Studio6.0 단축키

컴파일 : Ctrl + F7

실    행:  Ctrl + F5

코드정렬 : Alt + F8

에러메시지 : F4

 

다음은 컨솔에 "Hello world!" 라는 문구를 출려가는 프로그램이다

#include <stdio.h>    // 표준 입출력 라이브러리를 사용하겠음
 
int main() // 프로그램 시작점 
{
    printf("Hello world!\n");  // 표준 출력에 문자열 출력 
    return 0;
}


#이 붙어 있는 명령을 전처리 지시자 라고 한다. 컴파일전에 전처리기에 의해 소스파일에 특정한 작업을

수행하는 명령이다. 위에서는 표준입출력 라이브러리를 사용하겠다고 알리고,  표준출력(컨솔)에 출력하는

printf 라는 함수를 사용하였다.  main은 C  프로그램에서 항상 시작점이 되는 함수로,  운영체제에 의해 처음으로

읽혀질 메모리 주소를 나타낸다.   

'언어로그 > C/C++' 카테고리의 다른 글

음수의 표현  (0) 2011.02.22
C 언어 학습에 핵심. 변수와 상수  (0) 2011.02.22
C 프로그램 실행과정  (0) 2011.02.22
C 언어란?  (0) 2011.02.22
비트필드  (0) 2010.12.10
함수의 이해 / 데이터 전달  (0) 2010.12.10