더북(TheBook)

2.1 문법

C 프로그램의 전반적인 구조를 살펴보면 특정한 문법에 따라 여러 텍스트 요소가 엮인 것을 알 수 있다. 여기서 텍스트 요소란 다음과 같다.

특수어(special word): 예제 1-1에서는 #include, int, void, double, for, return과 같은 특수어1를 사용했다. 이 책에서는 이런 특수어를 굵게 표시한다(더불어 일반 함수와 8장에서 소개할 타입-독립 매크로도 굵게 표시한다). 특수어는 C 언어에서 특별히 정의되어 변하지 않는 개념이나 기능을 가리킨다.

구두점(punctuation)C: C 언어는 프로그램 구조와 관련된 구두점을 다양하게 제공한다.

▪︎ 괄호의 종류는 모두 {...}, (...), [...], /*...*/, <...>로 다섯 가지다. 괄호는 프로그램의 특정 부분을 한데 묶으며, 항상 여는 괄호와 닫는 괄호가 짝을 이뤄야 한다. 그 중 <...>는 이 책의 예제에 나온 것처럼 드문 경우에만 논리적으로 동일한 문장의 한 줄 안에서 사용한다. 나머지 네 가지 괄호는 앞에서 printf를 사용했을 때처럼 한 줄 뿐만 아니라 여러 줄에 걸쳐 사용할 수 있다.

▪︎ 구분자(separator, terminator)는 크게 두 가지인데, 바로 콤마(comma, ‘,’)와 세미콜론(semicolon, ‘;’)이다. 앞에서 printf로 전달하는 네 가지 인수를 구분하는 데 콤마를 사용했다. 또 12줄에서 리스트의 마지막 원소 뒤에도 콤마를 붙였다.

 

getting-started.c

12 [3] = .00007,

C 언어를 처음 배울 때 힘든 점 중 하나는 구두점의 의미가 다양한 경우가 있다는 것이다. 예를 들어 예제 1-1에서 { }와 [ ]는 각각 세 가지 용도로 사용됐다.Exs 1

 

 


1 C 언어에서는 이런 식별자(identifier)를 지시어(directive)C, 키워드(keyword)C, 예약어(reserved)C라 부른다.

 

 


Exs 1 {}[]의 용도를 모두 찾아보자.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.