실제 코드 내에서 malloc을 호출하기 때문에 메모리를 힙에 저장한다
2024. 8. 10. 16:57ㆍ정보처리,전산/Clang
반응형
- 힙 메모리: 힙은 동적 메모리 할당을 위해 사용되는 컴퓨터의 메모리 영역이다. 프로그램이 동적으로 메모리를 할당해야 할 때, 보통 힙에서 공간을 요청한다.
- malloc 함수: C와 C++에서 malloc(memory allocation)은 힙에서 지정된 양의 메모리를 할당하는 데 사용되는 표준 라이브러리 함수이다. 할당된 메모리는 명시적으로 free 함수를 호출할 때까지 사용 가능하다.
include <stdio.h>
include <stdlib.h>
int main() {
int arr;
int n = 5;
// Allocating memory for an array of 5 integers on the heap
arr = (int )malloc(n sizeof(int));
if (arr == NULL) {
// Handle memory allocation failure
printf("Memory allocation failed\n");
return 1;
}
// Use the allocated memory
for (int i = 0; i < n; i++) {
arr[i] = i + 1;
printf("%d ", arr[i]);
}
// Free the allocated memory
free(arr);
return 0;
}
- malloc은 힙에 5개의 정수를 저장할 메모리를 할당한다.
- 포인터 arr를 사용하여 동적으로 할당된 메모리에 접근하고 조작한다.
- 사용이 끝난 후, free를 호출하여 메모리를 힙에 반환한다.
1. 메모리 할당: malloc 함수를 사용하여 힙에 5개의 정수 공간을 할당한다.
2. 메모리 사용: 할당된 메모리에 1부터 5까지의 값을 저장한다.
3. 출력: 저장된 값들을 차례로 출력한다.
4. 메모리 해제: free 함수를 사용하여 힙에서 메모리를 반환한다.
반응형
'정보처리,전산 > Clang' 카테고리의 다른 글
문자열 포인터 (0) | 2024.11.28 |
---|---|
완전수 (0) | 2024.11.28 |
변수의 범위(scope) (0) | 2024.07.26 |
포인터 배열 , 배열 포인터 (1) | 2024.07.24 |
switch case while (0) | 2024.07.19 |