지역 변수는 보통 함수 안에서 선안한 후 함수 끝까지 사용하지만 선언 위치에 따라 사용 범위가 달라질 수 있다
특정 블록 안에 변수를 선언하면 사용 범위가 블록 내부로 제한됩니다. 메모리에 할당된 저장 공간도 블록이 끝나면 자동으로 회수되어 더 이상 존재하지 않습니다. 일단 지역 변수를 블록 안에 사용하는 예를 살펴보겠습니다.
// 블록 안에 지역 변수를 사용하여 두 변수를 교환하는 프로그램
#include <stdio.h>
int main(void)
{
int a = 10, b = 20;
printf("교환 전 a와 b의 값 : %d, %d\n", a, b);
{ // 블록 시작
int temp; // temp 변수 선언
temp = a;
a = b; // a와 b는 선언된 변수
b = temp;
} // 블록 끝
printf("교환 후 a와 b의 값 : %d, %d\n", a, b);
return 0;
}
사용 가능한 변수가 둘 이상이면 가장 가까운 블록에 선언된 변수를 사용합니다.
특정 블록 안에 변수를 선언하면 필요한 경우 잠깐 사용하고 메모리를 재활용하는 효과를 볼 수 있습니다.
'프로그래밍언어 > C 언어' 카테고리의 다른 글
[혼자 공부하는 C언어] 정적 지역 변수 (0) | 2022.12.10 |
---|---|
[혼자 공부하는 C언어] 전역 변수 (0) | 2022.12.10 |
[혼자 공부하는 C언어] 지역 변수 (0) | 2022.12.10 |
[혼자 공부하는 C언어] 연산 함수 직접 구현 (0) | 2022.12.10 |
[혼자 공부하는 C언어] 문자열을 비교하는 strcmp, strncmp 함수 (0) | 2022.12.10 |