1. C 프로그래밍 언어
ㅇ 1972년, 벨 연구소에서, 유닉스 운영체제 개발자인 리치(D.M.Ritchie) 등에 의해 개발
ㅇ 광범위한 지지기반을 가지게된, 대표적인 절차식 프로그래밍 언어
ㅇ UNIX 운영체제 대부분이 이 C 언어로 작성됨
※ C 언어의 기원 : ALGOL60 -> CPL -> BCPL -> B -> C ( -> C++ )
2. C 언어의 특징
ㅇ 작고, 간결하고, 모듈식이며, 효율적이고, 실행속도가 빠르며, 호환성이 좋음
- 저수준 언어의 효율성 및 하드웨어 접근성이 우수한 능력에다가
- 고수준 언어의 일반성 및 이식성을 결합시킴
* 주로, 시스템 프로그래밍에 많이 쓰이는 언어
. 최소의 코드로 최대의 기능 구현
* 특히, 제한된 상황에서 최대의 성능을 끌어내기에 적합
. 즉, 컴퓨터 자원을 효율적으로 쓰기에 적당함
.. (메모리 자원의 정밀 조절 가능 등)
ㅇ 구조적 프로그래밍 언어
- 프로그램을 기능별 함수로 분할 작성하여, 프로그램의 논리화를 도모함
- C 언어는, 구조적 프로그래밍 기법을 사용하는 대표적인 프로그래밍 언어 임
ㅇ 절차적 프로그래밍 언어
- 프로그램이 `어떻게(=로직)` 작동하는지가 중요한,
- 계산 중심적 (calculation-oriented) 언어
. `절차적`에 대한 핵심 구성 요소가 C 함수 임
ㅇ 많은 자료형과 풍부한 연산자를 가지고 있어서,
- 프로그램을 간결하게 작성할 수 있음
3. C 언어의 기초
※ ☞ C 기초 문법 참조
- 식별자 명명 규칙, C 예약어, 주석 등
※ ☞ C 연산자 참조
- 산술 연산자, 비교 연산자, 포인터 연산자, 구조체 연산자 등
※ ☞ C 자료형 참조
- 정수형(int), 실수형(float,double), 문자형(char) 등
4. C 언어의 함수
※ ☞ C 함수 참조
- 특정 작업을 수행하도록 설계된 독립적인 프로그램(부프로그램)
- C 프로그램의 실행은, 함수와 함수가 연결된 형태로 이루어짐
- 사용하기 전에 항상 함수의 원형(Prototype)을 밝혀야 함
※ ☞ C 메모리 할당 참조
- (malloc, calloc, realloc 등)
5. C 언어의 단계별 실행과정
※ ☞ C 선행처리기, 컴파일, 링커 참조
- (단계) 선행처리 -> 컴파일 -> Linking(링커) -> 실행
6. C 언어의 표준 : ANSI/ISO C 표준
ㅇ ISO/IEC JTC1 SC22 WG14에서 개발 관리
- 주요 표준 버젼 例) C90 (1990년), C99 (1999년), C11 (2011년)등
ㅇ 각 버젼별 C 표준의 표현(서술) 형식은,
- C 언어,C 선행처리기,C 라이브러리들이 하나로 어우러진 단일 패키지로써 서술됨