◾ 지역변수
#include <stdio.h>
void assign(void); // 함수 선언
int main()
{
int a = 0; // 지역 변수 선언과 초기화
assign(); // 함수 호출
printf("main 함수 a : %d\n", a);
return 0;
}
void assign(void)
{
int a; // main 함수에 있는 변수와 같은 이름의 지역 변수
a = 10; // assign 함수 안에 선언된 a에 대입
printf("main 밖 a : %d\n", a);
}
① 메모리를 효율적으로 사용한다.
지역 변수는 함수 안에서만 사용하기 때문에 함수가 반환되면 그 저장 공간을 계속 유지할 필요가 없다. 따라서 운영체제는 지역 변수가 선언된 함수가 반환되면 할당된 저장 공간을 자동으로 회수해 재활용한다.
② 디버깅에 유리하다.
#include <stdio.h>
int main()
{
int a = 10;
int b = 20;
printf("교환 전 a와 b 값 : %d, %d \n", a, b);
{
int temp; // 변수 선언
temp = a; // 변수 안에 a 값 10 넣기
a = b; // a 안에 b 값 20 넣기
b = temp; // b 안에 temp 값 10 넣기
}
printf("교환 후 a와 b 값 : %d, %d \n", a, b);
return 0;
}