본문 바로가기
프로그래밍/C 언어(정리)

C언어] 전역변수와 지역변수의 차이

by 곰나나 2023. 12. 22.

[전역 변수와 지역변수]

1. 전역 변수와 지역변수
예시를 보면서

 

- 차이1 : 전역 변수와 지역변수의 차이는 선언의 위치이다.

전역 변수의 함수의 밖에서 선언 되었고 지역 변수는 각 함수들의 내부에서 선언되었다.

 

- 차이2 : 변수가 사용될 수 있는 범위가 다르다.

전역 변수의 경우 특정 함수에 속하지 않고 프로그램(파일) 전체적으로 사용이 가능하다. 반면 지역 변수는 자신이 선언된 함수만 사용되고 외부에서는 이 변수를 사용할 수 없다.

 

- 차이3 : 초기화 여부.

전역 변수는 별도의 초기식이 없더라고 0으로 초기화된다. 전역 변수는 프로그램(파일) 전체적으로 사용되는 중요한 변수 이므로 초기값을 지정하지 않더라도 컴파일러가 0으로 초기화 해준다.

지역 변수는 초기식이 없을 경우 초기화되지 않는다. 무슨 값을 가지게 될 지 알 수 없는데 이때 초기화되지 않은 값을 쓰레기값(garbage)라고 한다.

 

- 차이4 : 파괴 시기

전역 변수는 프로그램(파일)에 소속되어 있고 모든 함수에서 사용 가능해야 하므로 프로그램이 실행 중인동안에는파괴되지 않는다.

지역변수는 특정 함수 내부에서만 사용되므로 함수가 실행 중일 때만 메모리를 차지하며 함수가 끝나면 변수의 파괴된다.

 

728x90

'프로그래밍 > C 언어(정리)' 카테고리의 다른 글

C언어] 포인터  (1) 2023.12.22
C언어] 다차원 배열  (2) 2023.12.22
C언어] 기억부류  (1) 2023.12.21
C언어) 배열명  (0) 2023.12.20
C언어) 배열  (1) 2023.12.20