목표Goal
C언어의 구조가 어떻게 생겼는지, 개략적으로 이해해보자.
개요
이것만으로는 흠.. 이해가 어렵지만, 그래도 한번 적어보자.
main 함수
프로그램의 실행은 main으로 시작되며 main 함수의 내부에서 printf 함수를 호출한다. main 함수는 여러 함수 중에서 특별한 기능을 하는데, 프로그램의 시작점entry point 기능을 한다. 즉, 여러 함수가 있다 하더라도 운영체제는 main 함수를 제일 먼저 호출한다
#include <stdio.h>
int main(void) {
printf(“Hello, World !!”);
}
위의 소스는 매우 간단한 구조만을 나타내었는데 보통 C언어 프로그램은 아래와 같은 구조를 가진다. C언어는 함수 구조의 언어이므로 함수는 한 개 혹은 그 이상일 수 있다.
위의 그림은 소스를 그림으로 나타낸 것이다. 하나의 소스는 전처리기Proprocessor문과 전역 데이터Global Data (전역 변수 혹은 전역 함수)와 함수Function로 구성된다. 함수는 다시 블록Block으로 구성되고, 블록은 문장Statement으로 구성된다. 문장은 선언문, 대입문, 함수 호출문, 제어문, NULL문, 블록으로 나뉜다.
이외에 C언어의 구성요소에는 주석Comments, 상수Constant, 예약어Reserved Word, 식별자Identifier가 있다. 아래 코드는 위의 구조를 토대로 C언어의 기본 형태를 적은 것이다. 모든 소스가 이런 식으로 구성되어 있지는 않을 수도 있지만 대개 이런 식으로 구성되어 있다는 것을 참고하기 바란다. 각각에 해당하는 내용은 매우 많은 설명이 필요하므로 생략하도록 하겠다.