더북(TheBook)

TAKEAWAY 2.4 식별자는 선언문이 속한 스코프에 바인딩(binding)된다.

식별자의 스코프는 문법에 의해 명확히 표현된다. 예제 1-1의 세 선언문에 대한 스코프는 다음과 같다.

A: main의 정의 안에서만 보인다. 즉, A의 스코프는 선언을 시작하는 8줄부터 가장 안쪽 {...} 블록을 닫는 24줄까지다.

i: 가시성(visibility)이 가장 낮다(가시 범위가 가장 좁다). i를 선언한 for 구문에 바인딩되어 16줄의 선언문부터 for 구문의 {...} 블록 마지막 문장인 21줄까지다.

main: {...} 블록에 담겨 있지 않기 때문에 선언문부터 파일의 끝까지가 스코프다.

첫 번째와 두 번째 같은 스코프를 블록 스코프(block scope)C라 부른다. 스코프가 {...} 블록으로 제한되기 때문이다. 세 번째에 나온 main처럼 {...} 블록으로 감싸지 않은 스코프를 파일 스코프(file scope)C라 하고, 파일 스코프에 속한 식별자를 흔히 글로벌(global)(전역) 식별자라 부른다.

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