C언어 동적할당메모리를 사용한 성적 입출력
- 최초 등록일
- 2014.12.23
- 최종 저작일
- 2012.10
- 4페이지/ 한컴오피스
- 가격 1,000원
목차
1. 과제설명
2. 이론
3. 소스코드 설명
4. 실행결과 및 설명
5. 고찰
6. 전체 소스코드
본문내용
1, 과제설명
동적 할당을 사용하여 이와같은 결과를 가지도록 포르그램을 작성한다.
2, 이론
A.동적 메모리 할당
배열을 사용시 갖게 되는 단점을 보완하기 위해 사용한다. 배열의 크기로 인해 메모리 할당에 인위적인 제한을 갖고, 실제 저장하는 요소의 수가 예상보다 매우 적으면 메모리 낭비가 심해진다. 또한 배열이 담을 수 있는 것보다 더 큰 데이터를 담아 배열의 경계를 넘는 경우 프로그램은 심각한 문제에 빠질 수있는 것을 고려해서 그렇지 않도록 프로그램을 해야 하는데 이러한 점에 있어서 실행 시 필요할 때마다 메모리를 할당받는 동적 메모리 할당을 사용한다. 동적메모리 할당이란 프로그램 실행 시 원하는 크기의 메모리를 요청할 수 있고, 더 이상 필요하지 않다면 즉시 해제하여 다른 메모리 요청에 해제된 메모리 공간이 다시 사용될 수 있게 한다는 것이다.
B.동적메모리 함수
malloc() - malloc()함수의 인수로 크기를 넘겨주면 운영체제에서 비어있는 영역을 할당하여 그 시작주소를 반환해 준다. malloc()함수는 호출 시 메모리를 할당받을 수 없는 상태라면 null값을 반환할 것이다.
calloc() - calloc()함수는 num_element_size만큼의 크기를 할당하면서, 할당되니 공간을 자동으로 0으로 초기화 한다. 이런 초기화가 편리하기도 하지만, 메모리를 사용하기 전에 먼저 할당받은 메모리에 항상 값을 저장하는 프로그램이라면 이런 과정이 오히려 낭비가 될 수 있어 calloc()함수에비해 malloc()를 더 많이 사용한다
참고 자료
없음