[ C언어: 동적 메모리 할당의 기본 ]


[ C언어: 동적 메모리 할당의 기본 ]

동적 메모리 할당 기본적인 함수 malloc()은 바이트 단위로 동적 메모리를 할당한다. malloc()은 <stdlib.h>에 원형이 정의되어 있다. int *p; p = (int *)malloc(100*sizeof(int)); // 100개의 정수 malloc() 반환형: void * → 프로그래머가 할당받은 메모리 블록을 어떤 자료형으로 사용할지 알 수 없기 때문이다. (void 포인터를 원하는 포인터 타입으로 변경 후 사용하면 된다.) int *score; score = (int *)malloc(100*sizeof(int)); if(score == NULL){ … // 오류처리(메모리가 올바르게 할당되었는지 확인) } malloc()은 메모리가 부족하면 null을 반환해 반환값이 null 값인지 확인해야 한다. +) 동적 메모리를 초기화시키지 않는 이유는 실행 시간을 조금이라도 단축시키기 위해서다. 쓰레기 값이 아닌 0으로 초기화된 동적 메모리를 원한다면 뒤에 나오는 cal...


#c언어 #free #malloc #동적메모리할당

원문링크 : [ C언어: 동적 메모리 할당의 기본 ]