본문 바로가기

C

[C언어] static 변수

반응형

static 변수

 - 지역변수나 전역변수에서 모두 사용 가능하다.

 - 선언된 함수 내에서만 접근이 가능하다.

 - 함수 내에 선언된 지역변수는 해당 함수가 반환되면 소멸되지만, static 변수는 소멸되지 않는다.

 - 프로그램이 실행되는 동안 계속해서 유지해야 할 변수가 있을 때 사용한다.

 

#include<stdio.h>

int disp(){

   static int num1 = 0;   // 초기화하지 않으면 0으로 초기화 된다.
   int num2 = 0;          // 초기화하지 않으면 쓰레기 값이 들어간다.

   num1++, num2++;

   printf("num1 = %d, num2 = %d\n", num1, num2);
}

int main(){

   for(int i = 0; i < 3; i++)
      disp();
   
   return 0;
}

 

반응형