▪︎ 타입(type)C 또는 타입 앨리어스(type alias): 새로운 오브젝트의 종류를 지정한다. 예제에서 i의 타입을 지정하는 size_t가 여기에 해당한다. 여기서 _t는 타입을 가리키는 식별자 뒤에 붙이는 C 표준에서 흔히 사용하는 명명규칙이다.
▪︎ 함수(function): 예제에서 main, printf가 여기에 해당한다.
▪︎ 상수(constant): 예제에서 EXIT_SUCCESS가 여기에 해당한다.
• 함수(function)C: 예제에 나온 식별자 중 main과 printf는 함수다. 앞에서 본 것처럼 printf는 프로그램에서 화면에 뭔가를 출력하기 위해 ‘사용’한 것이다. 반면, main 함수가 나온 문장들은 코드에서 이 함수를 정의한(defined)C 것이다. 다시 말해 int main(void)라는 선언문(declaration)C 뒤에 {...}로 묶은 블록(block)C 안에 이 함수가 수행할 일을 나열했다. 예제 1-1에서 6줄부터 24줄까지가 main 함수의 정의(definition)C다. C 프로그램에서 main은 특별한 역할을 하는데, 구체적인 내용은 뒤에서 소개한다. 이 함수는 반드시 있어야 한다. 프로그램 실행을 시작하는 부분이기 때문이다.
• 연산자(operator)C: C 언어에는 다양한 연산자가 있는데, 그 중 예제 1-1에서 사용한 연산자는 다음과 같다.
▪︎ =: 초기화(initialization)C 또는 대입(assignment)C
▪︎ <: 비교
▪︎ ++: 변수 값을 1만큼 증가시킨다.
▪︎ *: 두 값을 곱한다.
자연어를 쓸 때와 마찬가지로 C 프로그램의 어휘나 문법도 실제 의미를 구분해서 사용해야 한다. 하지만 자연어와 달리 C 언어는 그 의미가 엄격하게 정의되어 있어서 모호함이 거의 없다. 이어지는 절에서는 C 언어의 의미에서 세 가지 핵심 요소인 선언, 정의, 문장에 대해 차례대로 살펴본다.