티스토리 뷰
오늘은 C언어 프로그램을 만들기 위한 방법에 대해 알아 보겠습니다.
C언어 프로그램을 만들기 전에 먼저 C언어의 역사와 특징에 대해 살펴보겠습니다.C언어는 1972년 미국 벨 연구의 데니스 리치에 의해 개발된 시스템 기술용 언어로서, 유닉스라는 운영체제 개발에 사용할 목적으로 만들어 졌습니다.당시에 유닉스는 어셈블리 언어로 만들어져서 하드웨어 의존도가 높아 컴퓨터 기종에 따라 프로그램을 다시 작성해야 하는 불편함이 있었습니다.이에 따라 컴퓨터 기종 간의 호환성을 기대할 수 있을 만큼 고급언어이면서,기능 면에서는 어셈블리 언어 못지 않게 컴퓨터 하드웨어를 제어 할 수 있는 새로운 언어의 등장이 필연적이었습니다.이를 배경으로 하여 C언어가 탄생되었습니다.
많은 언어가 탄생하고 소멸되었지만, 아직도 C언어 프로그램은 다양한 분야에 쓰이고 있습니다.그 이유는 C언어로 만든 프로그램이 다른 언어와 구별되는 다음과 같은 몇가지 특징들이 있기 때문입니다.
논리적이며 구조적인 시스템 프로그래밍 언어이다.
하드웨어 제어가 가능하다.
프로그램 이식성이 높다.
간략한 문법 표현으로 함축적인 프로그램 작성이 용이하다.
저급 언어 특성을 가진 고급 언어이다.
이와같은 C언어 프로그램을 만들려면 몇가지 단계를 거쳐야 합니다.
그 단계는 먼저 내가 만들 프로그램의 목적을 정의 하는거입니다.프로그램의 목적 정의란 요구 분석과 시스템 분석을 통해서 프로그램이 가져야 할 기능들을 정의 하는것입니다.
다음단계는 C언어 프로그램을 설계하는 것입니다.프로그램의 설계는 분석된 기능을 처리 할 수 있도록 프로그램의 구조를 설계하는 것입니다.
그리고 나서야 이제 C언어 프로그램을 만드는 핵심 작업인 소스코드를 작성하는 것입니다.C언어 소스코드는 작성된 프로그램 설계를 기반으로 에디터를 사용하여 소스코드를 작성해야합니다.
C언어 프로그램의 소스코드의 작성이 끝났으면 컴파일과 링크라는 과정을 거쳐야 합니다. 컴파일이란 만들어진 소스코드를 목적파일이란 파일로 변환하는 것이고 링크란 변환된 여러 목적파일들을 하나로 취합하여 실행 가능한 파일로 만드는 것입니다.
실행파일이 만들어 지면 당연히 실행파일을 실행해 보고실행을 바탕으로 테스트와 디버깅 과정을 거쳐야 합니다.
테스트란 C언어 프로그램이 내가 처음 목표한 대로 잘 만들어 졌는지 검사를 하는것이고,디버깅은 테스트의 과정에서 발생한 버그를 찾아서 고치기 위한 작업을 말합니다.
이제 모든 테스트와 디버깅 과정이 끝이 났습니다. 하지만 C언어 프로그램이 여기서 완성된 것은 아닙니다.모든 프로그램은 발견하지 못한 에러가 숨어 있을 수 있고 사용자가 추가 요구 사항이 생길수도 있습니다.그러한 경우를 유지보수라고 합니다. 유지보수까지 진행이 되어야 진정한 C언어 프로그램의 완성이라고 할 수 있을 것입니다
그럼 이제 C언어 프로그램의 핵심인 소스 파일이 어떻게 이루어 져 있는가 알아보겠습니다.C언어 소스파일은 보통 도입부와 main함수 호출되는 함수로 이루어져 있습니다.
도입부는 헤더파일을 포함시키고 호출되는 함수들을 먼저 선언해 두는곳입니다.main함수는 C언어 프로그램의 진입점입니다. 진입점은 프로그램이 처음 실행되는 곳으로모든 C언어 프로그램은 main함수에서 시작이 됩니다.그리고 호출되는 함수란 main함수에서 해당 함수를 호출 할 수 있도록 함수를 정의 해놓은 곳입니다.
C언어 프로그램의 구조를 알았으니 이제 C언어의 구성요소들을 알아보겠습니다.C언어 프로그램을 구성하는 요소들은 다음과 같습니다.
예약어: int, char, if, for ...
명칭: 변수, 배열, 함수 ... 등의 이름
상수: 값이 불변인 자료
연산자: =, -, *, /, ++ ...
설명문: 프로그램에 대한 주석
예약어란 C언어에서 미리 정의되어 있는 단어들을 말하는 것입니다.이 예약어는 프로그램 내에서 특정한 의미를 가지고 있기 때문에 함부로 사용해서는 안됩니다.
자료형 관련 예약어: char, int, float, long, double, unsigned, union, enum, void
기억 관련 예약어: auto, static, extern, register
제어 관련 예약어: if~else, for, while, do~while, switch~case, break, continue, return
기타 예약어: main, sizeof, include ...
그리고 C언어 프로그램을 작성하다 보면 어떤 값을 보관하기 위한 변수 이름,일련의 명령을 수행하는 매크로 이름,
자료형 이름, 배열 이름, 함수 이름 등 필요에 따라 이름을 만들어야 하는데 이러한 이름을 나타내는 문자열을 사용자 정의 명칭이라고 하며,명칭을 만들 때는 다음과 같은 정해진 규칙에 따라 명령을 만들어 사용해야 합니다.
영문자와 숫자의 조합으로 만든다.
명칭의 첫 문자는 영문자나 밑줄이어야 한다.
특수문자를 사용해서는 안된다.
문자 사이에 공백이 있어서는 안된다.
예약어를 사용할 수 없다.
영문자 대문자와 소문자는 서로 구별하여 사용한다.
명칭의 길이는 컴파일러에 따라 차이가 있다.
C언어에서 사용되는 상수에는 수치 상수, 문자 상수, 문자열 상수가 있습니다.
그리고 C언어에서는 연산자를 이용하여 각종 연산을 수행하며,다른 언어에 비해 많은 연산자가 준비되어 있어 다양한 연산을 효과적으로 수행할 수 있습니다.
마지막으로 설명문은 컴파일 시에 포함되지 않는 말 그대로 소스를 설명하기 위한 주석입니다.
이상으로 C언어 프로그램에 대해 간략하게 알아 보았습니다. 모두들 C언어를 이용하여 내가 사용할 간단한 프로그램을 작성하여 C언어의 재미를 느껴보시길 바랍니다.
'IT' 카테고리의 다른 글
GCC 컴파일 시작하기 (0) | 2016.09.03 |
---|---|
안드로이드 앱 만들기 특징과 구조 (0) | 2016.09.02 |
델파이 언어 (0) | 2016.08.30 |
씨게이트 외장하드 2T 구입후기 (0) | 2016.08.30 |
서피스 프로4 i7 개봉기 (2) | 2016.08.26 |