변수의 범위

범위의 종류

  • 전역 변수 : 함수의 외부에서 선언
  • 지역 변수 : 블록 안에서선언

지역변수는 불러진 블록에서 시작해서 블록이 끝나면 사라지게됨.

변수의 속성 : 이름 , 타입, 크기, 값 + 범위, 생존시간, 연결

  • 범위 : 변수가 사용가능한 범위 , 가시성
  • 생존시간 : 메모리에 존재하는 시간
  • 연결 : 다른 영역에 있는 변수와 연결상태

전역변수 : 함수의 외부에서 선언되는 변수
프로그램 시작시 선언되어서, 프로그램 종료시 사라짐

어디서든 접근 가능하다는 장점이 있지만, 어디서든 접근 가능하다는 단점이 있다.

같은 이름의 전역 변수와 지역 변수

전역변수를 선언하고, 같은 이름의 지역변수를 선언한다면

지역변수의 블록 내애서는 지역변수가 전역변수보다 우선됨.

생존 기간

  • 정적 할당 (static allocation): 프로그램 실행 시간 동안 계속 유지, 전역변수는 정적 할당

  • 자동 할당 (automatic allocation) 블록에 들어갈때 생성, 블록에서 나올 때 소멸, 지역 변수는 자동 할당.

  • 생존 기간을 결정하는 요인:
    • 변수가 선언된 위치
    • 저장 유형 지정자 ( auto, register, static, extern 등등 )

static

정적 지역변수는 사라지지 않고, 실행 도중엔 다시는 초기화죄니 않음.

extern

컴파일러에게 변수가 다른곳에서 선언되고 있어. 라고 알려줌.

연결

다중 소스 파일에서 변수들을 연결하는데 사용한다.

'TIL > [C++ 프로그래밍} TIL' 카테고리의 다른 글

TIL (22.04.17) 3주차 알고랩 풀이  (0) 2022.04.17
TIL (22.04.13)  (0) 2022.04.13
TIL 달팽이와 방향배열 (22.04.08)  (0) 2022.04.08
TIL (22.04.03)  (0) 2022.04.08
TIL (22.04.06)  (0) 2022.04.06