c언어
수업에서 느낀점(변수)
pi92
2021. 3. 3. 08:43
두번째 수업에서는 변수들에 대해 배우게 되었다.
크게 외부변수와 내부변수 그리고 heap변수등이 있으며
외부변수 - 공유 할 수 있는 변수로
전역변수 - 다른 파일에서 공유 가능
정적외부변수(static) - 다른 파일에서 공유 불가능
내부변수
정적내부변수(static int) - 프로그램 종료전까지 소멸 하지 않음
자동변수(auto int) - 함수 종료시 소멸
레지스터 변수(register int) - 외부 변수로 사용 금지하고 CPU 내에서 잡힘
heap변수
malloc, calloc ---- free
new ---- delete
등으로 정리 할 수 있었다.
함수에서는 변수 분류가 중요하며 모양에 따라 단순변수, 배열변수, 스트럭처변수등이 있다.
함수는 메모리를 절약 시킬수는 있지만 속도는 저하된다.
binding - 변수의 크기(정보)와 주소(메모리할당)가 언제 할당되는지
data 영역에서 정적영역과 동적영역으로 나뉘어진다.
정적영역 - 전역변수, 정적변수
동적영역
heap - run시 크기, 주소 확정
stack(자동변수) - compile시 크기화정, run시 주소확정
스텍 - LIFO
큐 - FIFO
C, C++ 언어의 특징은 포인터를 사용하여 시스템을 직접 제어 할 수 있으며, 다음시간은 포인터에 대해 배울 예정이다