목록C (4)
nakka soft world !
자동 변수(auto)- 변수 앞에 지정하는 기억류 지정자로서 생략이 가능하다.- 기억류 지정자가 없으면 auto로 간주한다.- 변수의 유효 범위는 해당 블록내에서만 가능하며 블록을 벗어나면 변수는 소멸된다.- 스택에서 주소값에 의해 처리한다.
정적 변수(static)- 변수의 사용은 프로그램이 끝나야 종료가 된다.- 변수의 유효 범위는 자동변수 처럼 블록 내에서만 사용된다.- 반드시 변수 앞에 static을 지정한다.- static으로 지정된 변수는 초기값이 자동적으로 지정된다. int = 0, char = ' ', float = 0.0 - static 변수는 컴파일시 기억영역이 확보되므로 프로그램 실행과는 관계없으며, 함수나 블록의 실행이 종료되어도 정적변수의 값은 소멸되지 않는다. static 전역변수 - 해당 소스파일 내에서만 유효하게 쓰겠다는 의미로 다른 소스 파일에서 해당 전역변수를 참고할 수 없다. extern 전역변수 - static과는 다르게 다른 소스파일에서도 전역으로 사용가능한 명령
외부 변수(extern)- 외부 변수는 함수밖에 선언한다.- 외부 변수는 사용범위가 다른 변수에 비해 가장 넓다.- 외부 변수의 초기치를 생략하면 정적 변수처럼 초기값이 지정된다. static 전역변수 - 해당 소스파일 내에서만 유효하게 쓰겠다는 의미로 다른 소스 파일에서 해당 전역변수를 참고할 수 없다. extern 전역변수 - static과는 다르게 다른 소스파일에서도 전역으로 사용가능한 명령
터, 노트북, 모니터, 엔티시스템|작성자 엔티시스템레지스터 변수(register)- 레지스터 기억류로 지정된 변수는 CPU의 특수한 메모리에 저장된다.- 레지스터의 메모리 한계 때문에 많은 변수를 지정할 수 없다.- 레지스터 변수는 수행 시간이 빠르다.- 레지스터 변수는 자동변수로 취급된다.- 레지스터 변수는 주소연산자(&)를 사용할 수 없다.- 레지스터 변수는 문자형, 정수형, 포인터형 변수에만 가능하며,- 기억공간의 크기는 2byte를 차지한다.