728x90
반응형
지역변수 |
|
지역 변수(Local variable)란 어떤 한정되 지역 에서만 사용할수 있는 변수
지역 변수는 그 변수가 선언된 블럭이 끝나면 그 변수에 들어있는 값을 잃게 됨니다.
지역 변수를 선언할때는 블럭의 윗부분에 선언을 해야 합니다.
모든 작업 전에 선언해야 하죠. 그렇지 않으면 에러가 납니다
전역변수 |
|
- 전역 변수(Global variable)는 지역 변수와는 다르게 한정된 지역이 아닌 모든 지역에서 사용이 가능한 변수를 말하는 것 입니다.
- 블럭 밖에서 선언된 변수는 모두 전역 변수
- 전역 변수는 프로그램이 끝날때까지 들어있는 값을 계속 유지합니다
단점
- 변수 관리가 어렵다
- 메모리를 프로그램 종료시 까지 차지한다
- 실행 파일 용량도 증가시킨다.
.
정적변수 |
|
:정적 변수(static variable)
- 접근은 지역변수처럼 특정 위치에서만 접근을 가능하도록 하여 안정성을 확보함과 동시에 전역변수처럼 항상 존재하는 변수. 이런 두 변수의 장점만을 취한 변수
1. 선언 위치는 지역변수와 같다. ( 순수 C언어의 경우 함수의 맨 처음 부분, C++은 어디
서든 지 가능 )
2. 특정 선언 지역에서만 접근 할 수 있다.
3. 메모리 공간에서 변수의 저장공간은 전역변수와 그 위치가 같다.
4. 초기값을 주지 않을 경우 항상 0 으로 초기화 되며 프로그램을 실행시킬 때 단 한번만 초기
화된다.
(그래서 함수가 실행될 때 계속해서 초기값을 0으로 해주는 것 같지만 실제론 처음 한번만
초기화시킨다.)
'지역이 사라져도 변수는 유지되어야하는 경우'에 정적변수가 사용됩니다. 정적변수를 사용하는 것 또한 마찬가지로 키워드를 사용합니다.이때 사용하는 키워드는 static 입니다. 변수를 선언할 때 static 이라는 키워드를 앞에 붙여주면 됩니다
#include <stdio.h> |
728x90
'코스웨어 > 16년 스마트컨트롤러' 카테고리의 다른 글
201603016_정일모_업무일지_기억장치 (0) | 2016.03.17 |
---|---|
20160316_김가연_업무일지_LCD출력 (0) | 2016.03.17 |
20160315_김도관_업무일지_7Segment_스위치제어 (0) | 2016.03.17 |
20160316_정일모_업무일지_인터렙트 (0) | 2016.03.17 |
ms 마인크래프트를 인공지능에 활용 (3) | 2016.03.17 |
20160315_김도관_업무일지_C언어_if문_전역변수,지역변수 (0) | 2016.03.17 |
컴퓨터의 원리에 대해 알아보자 -3- (0) | 2016.03.17 |
컴퓨터의 원리에 대해 알아보자 -2- (0) | 2016.03.17 |