지역 변수

지역 변수()는 지역 변수 영역이 주어진 변수이다.

 펄의 지역 변수 
펄은 동적 지역 변수와 사전적(lexically-scoped) 지역 변수를 둘 다 지원한다. local 키워드를 사용하면 동적 지역 변수를 정의할 수 있으며, my를 사용하면 사전적 지역 변수를 정의할 수 있다. 동적 변수 지정은 오늘날 흔히 쓰이는 것이 아니므로 펄 문서는 "local은 대부분의 사람들이 "local"로 생각하는 것이 아니다"라고 경고한다.perldoc.perl.org: local 그 대신, local 키워드는 일시적인, 동적 값을 전역(package) 변수에 제공하며, 감싸고 있는 블록의 끝에 이를 때까지 지속된다. 그러나 해당 변수는 블록 내에서 호출된 모든 함수들의 측면에서 투명하다.perldoc.perl.org: perlsub: Temporary Values via local() 사전적 지역 변수를 만들기 위해 my 연산자를 대신 사용한다.perldoc.perl.org: perlsub: Private Variables via my()

동작 방식을 이해하기 위해 다음의 코드를 고려할 수 있다:

$a = 1;
sub f() {
  local $a;
  $a = 2;
  g();
}
sub g() {
  print "$a\n";
}
g();
f();
g();

출력물은 다음과 같다:
 1
 2
 1

 같이 보기 
 전역 변수
 비지역 변수

 각주 

분류:변수 (컴퓨터 과학)