728x90
728x170
배열의 크기를 입력 받아 해당 크기의 배열 생성하기 (동적 할당)
- 가끔. 배열의 크기를 처음부터 확정짓지 못할 경우가 많다. 또 쓰지 않는 공간이 많은 배열을 생성하여 메모리를 낭비하는 경우가 생기곤 한다.
- 이럴 때는 동적할당을 이용하여 사용자로부터 배열의 크기를 입력 받아 해당 크기의 배열을 생성하여 메모리를 절약할 수 있다.
- 아래는 예시 코드이다.
#include <stdio.h> // scanf, printf
#include <stdlib.h> // malloc, free
int main(void)
{
int *arr; // 배열 이름을 포인터 변수로
int n; // 배열의 크기를 받을 변수
int i;
printf("배열의 크기 : ");
scanf("%d", &n); // 배열의 크기를 받음
arr = (int *)malloc(sizeof(int) * n); // int형 배열을 n개의 크기로 만듬
for (i = 0; i < n; i++) scanf("%d", &arr[i]); // n개의 수를 배열에 저장
for (i = 0; i < n; i++) printf("%d ", arr[i]); // 배열의 내용을 출력
free(arr); //동적할당을 해제함
return 0;
}
내용 출처 : 네이버 지식 IN "배열 크기 지정" [LINK]
728x90
그리드형(광고전용)
'Programming > C' 카테고리의 다른 글
배열의 유형 및 선언 방법 (0) | 2021.05.08 |
---|---|
qsort 함수 : 퀵 정렬 라이브러리 함수 (0) | 2020.06.18 |
system 함수 : cls. pause (0) | 2017.09.22 |
실행 시간 측정 (clock() 이용) (0) | 2017.09.01 |
goto문 (0) | 2017.09.01 |
scanf와 ' '(공백) (0) | 2017.08.31 |
C 핵심 내용 정리 (0) | 2017.05.03 |
포인터 정리 (Arrangement of Single Pointer) in C (0) | 2017.04.17 |