배열의 이름은 포인터이다. 단, 그 값을 바꿀 수 없는 '상수 형태의 포인터' 이다.포인터포인터는 가리키는 주소값의 변경이 가능한 변수 형태이다.배열 이름다음 코드를 컴파일 해보면 배열의 이름과 배열의 첫 번째 요소의 주소값이 동일하다는 것을 알 수 있다. 이것은 배열
프로그램 실행 시, 운영체제는 해당 프로그램의 실행을 위한 메모리 공간을 미리 마련한다. 이때, 이 메모리 공간은 코드영역, 데이터 영역, 힙 영역, 스택 영역 이렇게 4개의 영역으로 구분이 된다.
프로그램을 구현하다보면 전역변수와 지역변수로는 해결되지 않는, 다른 유형의 변수를 필요로 하게되는 경우가 생긴다. 이러한 생성과 소멸의 시기가 지역변수나 전역변수와 다른 유형의 변수는 malloc함수와 free 함수를 통해 heap영역에 할당하거나 소멸할 수 있다.이런
malloc 함수를 이용하여 heap영역에 메모리 공간을 할당하고, 할당된 메모리 공간은 free 함수의 호출을 통해서 해제한다. 이를 통해 함수가 매번 호출될 때마다 할당되고, 또 함수를 빠져나가도 유지가 되는 생성과 소멸의 시기가 지역변수나 전역변수와는 다른 유형의
heap영역에 메모리를 할당하는 함수로, malloc 함수와 같은 기능을 한다.malloc 함수calloc 함수위에서 볼 수 있듯이, calloc 함수와 malloc 함수의 차이점은 메모리 공간 할당을 위한 전달 방식에 있다.malloc 함수 : 한번에 할당할 바이트의