c언어 변수의 유효범위 비지역 변수

안녕하세요.

저번에 c언어 변수의 유효범위 지역변수에 대하여 설명했었습니다.

2017/12/19 - [IT/C] - c언어 변수의 유효범위 지역변수

이번에는 c언어 변수의 유효범위 비지역 변수에대하여 설명하겠습니다.

 

저번에 말했던 지역변수는 선언된 함수 내에서만 사용가능하다고 말했습니다.

그럼 비지역변수는 어디서 사용가능할까요?

바로 선언된 파일의 내부나 프로그램전체입니다. 왠지 지역변수에 비해 스케일이 커진듯한 기분이 들지 않나요?

 

아래의 사진은 비지역 변수의 간단한 예시입니다. 

int main()의 위에 보이는 int t가 보이시나요?

저것이 비지역 변수입니다. 저 int t는 비지역변수라는 프로그램내의 모든 함수에서 볼수 있으므로 전역변수라고 부르기도 합니다.

 

이 int t의 앞에 static이라는 단어를 붙이면 비지역변수.c를 제외한 나머지 파일에서 int t를 볼 수 없게 됩니다.

이런경우를 파일범위 변수라고 합니다.

 

마지막으로 이 비지역 변수는 프로그램 실행할때 생성되고 남아있다가 프로그램의 종료될때 소멸됩니다.

다시말해 프로그램이 실행되면 비지역변수도 생성되고 프로그램이 종료되면 비지역변수역시 소멸되는 것이지요.

이런 변수를 정적변수 라고합니다.

 

 

Designed by JB FACTORY