더북(TheBook)

선언문의 맨 앞에는 타입(type)C이 나온다. 세 선언문에서는 각각 int, double, size_t로 지정했다. 각각의 의미에 대해서는 뒤에서 소개할 텐데, 일단 이렇게 타입이 지정된 식별자는 문장 안에서 숫자처럼 사용한다는 정도만 알아 두자.

iA에 대한 선언문은, iA(value)C을 저장하는 이름 있는 요소인 변수(variable)C라고 선언한다. 변수는 특정한 타입의 ‘뭔가’를 담은 박스로 표현하면 이해하기 쉽다.

▲ 그림 2-1 배열의 구조

여기서 박스 전체(오브젝트)와 박스 종류(타입)와 박스 내용(값) 그리고 박스에 적힌 이름 또는 레이블(식별자)을 구분할 줄 알아야 한다. 그림에서 ?? 부분은 구체적인 값을 모른다는 뜻이다.

다른 식별자(printf, size_t, EXIT_SUCCESS)에 대한 선언문은 코드에 나오지 않는다. 사실 이 식별자들은 이미 선언된 상태인데, 예제 1-2를 컴파일할 때 본 것처럼 이 식별자에 대한 정보를 컴파일러에게 명시적으로 알려 줘야 한다. 1줄과 2줄에 나온 문장이 바로 이런 정보를 전달하기 위해 적은 것이다. printfstdio.h에, size_tEXIT_SUCCESSstdlib.h에 선언되어 있다. 이런 식별자를 실제로 선언하는 문장은 컴퓨터 어딘가에 저장된 .h 파일에 담겨 있다. 예를 들면 다음과 같다.

int printf(char const format[static 1], ...);
typedef unsigned long size t;
#define EXIT_SUCCESS 0
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.