ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 0. Hello C!
    Programming Language/C 2020. 1. 31. 13:36

    C언어의 역사

    'The C Programming Language'의 표지

    C언어는 벨 연구소에서 개발된 유닉스 개발용 시스템 프로그래밍 언어입니다. 유닉스 개발용 고급 언어로는 처음에는 CPL에서 발전한 BCPL이 고려되었으나 이는 보강하여 B언어가 개발되었고, 데니스 리치에 의해 C언어로 발전하였습니다. 오늘날 가장 기본적인 프로그래밍 언어로 알려져있습니다.

     

    프로그램의 실행 과정

    프로그래밍은 컴퓨터의 하드웨어를 구동하는 명령어를 만드는 작업입니다. 편집기를 이용하여 원시 파일(.c)을 작성하면 컴파일러가 고급 언어로 작성된 프로그램을 기계어로 바꾸어 목적 파일(.obj)을 생성합니다. 프로그래밍 할 때 모든 기능을 직접 만들 수 없기 때문에 시스템 자체에 자주 사용하는 기능을 미리 만들어 놓은 시스템 라이브러리가 존재합니다. 링커는 이를 사용자가 작성한 소스코드와 연결하여 실행 파일(.exe)를 만듭니다. 작성된 프로그램은 일반적으로 이와 같은 과정으로 실행됩니다.

     

    C언어의 Hello World!

    #include <stdio.h>
    
    int main(void)
    {
        printf("Hello World!");
        
        return 0;    
    }

    C언어를 처음 배울 때, 위의 예와 같이 #include <stdio.h> int main(void){ (코드 내용) return 0; }는 단지 C언어로 프로그램을 짤 때 지켜야 되는 틀이라고만 배웁니다. 하지만 코드를 작성할 때는 그것의 뜻을 이해하고 사용하는 것이 바람직하다고 판단하여 의미에 대해 간단히 소개하도록 하겠습니다.

    전처리기와 헤더파일

    먼저, #include <stdio.h>는 전처리기(preprocessor) 부분입니다. #은 전처리기 지시자로 컴파일 이전 단계에 처리를 해라는 뜻이고, include는 해당 부분에 해당 헤더 파일에 있는 내용을 복사하라는 의미입니다. <stdio.h>는 standard input/output library(표준입출력 라이브러리)의 줄임말로 여러 입출력 함수가 포함된 헤더 파일입니다. 또한 헤더 파일의 확장자는 .h입니다. printf()scanf()와 같은 함수들을 매번 새로 정의하여 쓸 수 없기 때문에 이 과정을 통해 헤더 파일과 링킹하는 것입니다.

    main함수와 자료형

    다음으로, int main(void)는 그 자체로 하나의 함수입니다. int는 정수형(integer type)을 나타내는 자료형으로, main함수가 반환하는 값이 정수라는 의미이고, void는 입력값을 받지 않는다는 뜻입니다. return 0;는 정수 0을 반환하라는 의미로, 위의 프로그램이 정상적으로 작동되어 끝마쳤다는 것을 확인하기 위해서 사용합니다. 반환하는 자료형이 int이기 때문에 0 이외의 다른 정숫값을 사용할 수 있습니다.

    'Programming Language > C' 카테고리의 다른 글

    5. 포인터  (0) 2020.01.31
    4. 배열과 문자열  (0) 2020.01.31
    3. if-else, for, while  (0) 2020.01.31
    2. 버퍼와 getchar()  (0) 2020.01.31
    1. 자료형과 표준 입출력 함수  (0) 2020.01.31

    댓글

Designed by Tistory.