c언어 static 변수 : 메모리에 언제 올라가는가?
C언어에서 static 변수는 특이한 속성을 가지고 있습니다. 반절 정도는 지역 변수, 반절은 전역 변수 속성을 지니고 있는데요. visible한 범위는 블록 내이지만. 메모리는 프로그램이 종료가 될 때 까지 해제가 되지 않아요. 의외로 많은 함수들이, 내부에서 static, 그러니까 정적 변수를 쓰기도 합니다. 레퍼런스 시간에 몇 번 언급을 했을 거에요. 예제 프로그램 1개만 분석해 보겠습니다. 먼저 main 함수는 foo를 2번 호출합니다. 다음에, foo는 정적 변수인 atari를 가지고 있는데요. 10번째 줄에도 선언이 되어 있고, 12번째 줄에도 선언이 되어 있습니다. 10번째 줄과 16번째 줄에 주석이 달려 있네요. 일단 프로그램을 실행해 봅시다. atari 라는 변수가 not decleare..
코딩/C
2019. 9. 29. 19:11
최근댓글