(stdlib.h에 선언되어 있음.)
- malloc(메모리 크기);
- void* memcmp(size_t _Size);
- 할당한 메모리의 주소 반환
함수 호출 시 할당하고자 하는 메모리의 크기를 바이트 단위로 전달받고, 해당 크기만큼 메모리를 할당한다.
그리고 할당한 메모리의 시작 주소값을 반환한다.
할당된 메모리는 초기화 되지 않았을 수도 있다.
할당한 메모리는 반드시 free로 해제해줘야 한다.
동적할당을 할 때 사용된다.
인자 |
Size 메모리 블록의 크기 (바이트 단위) |
리턴값 |
|
예시1
#include <stdio.h>
#include <stdlib.h>
int main()
{
char* buffer;
buffer = (char*)malloc(sizeof(char) * 10);
if (buffer == NULL)
return 0;
for (int i = 0; i < 9; i++)
*(buffer + i) = 'A' + rand() % 26;
buffer[9] = '\0';
printf("Buffer: %s", buffer);
free(buffer);
return 0;
}
결과1
Buffer: PHQGHUMEA
참고자료
'Dev > C\C++' 카테고리의 다른 글
[C++] 함수와 const (0) | 2019.12.30 |
---|---|
[C/C++] free (0) | 2019.11.07 |
[C/C++] memcmp (0) | 2019.11.02 |
[C/C++] memset (0) | 2019.11.01 |
[C/C++] memcpy (0) | 2019.11.01 |