별의 공부 블로그 🧑🏻‍💻
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
⚠️AdBlock이 감지되었습니다. 원할한 페이지 표시를 위해 AdBlock을 꺼주세요.⚠️
starrykss
starrykss
별의 공부 블로그 🧑🏻‍💻


📖 Contents 📖