C언어에서 변수와 함수는 데이터형과 기억 클래스라는 두 속성을 지니는데, 이 중 메모리의 어느 위치를 어떻게 확보하는지를 결정하는 것을 ‘기억 클래스’라고 한다. 변수와 함수가 참조될 수 있는 영역에 따라 다음의 4가지로 나뉘어 볼 수 있다.
- auto
- extern
- register
- static
그 종류에 따라 변수와 함수가 참조될 수 있는 영역이 결정되는 기억 클래스는 다음과 같은 형태로 사용한다.
[기억클래스] [데이터형] [변수(혹은 함수)이름]
예를 들어, static 클래스의 int 형 변수 i의 선언을 한다면 다음과 같이 한다.
static int i;
이제 변수와 함수의 기억 클래스에 대해 각각 확인해야한다. 내용이 많아서 글을 여럿 나눌 것이다.