반응형
c언어 동적할당: 메모리 관리를 효율적으로 하기위해서 미리 할당을 하지않고 실행시간동안 사용할만큼의 공간만 할당하는 것
#include <stdio.h>
#include <stdlib.h>
int main()
{
int* ptr; //포인터 변수 선언
ptr = (int*)malloc(sizeof(int) * 3); //prt에 int * 3 을 할당
ptr[0] = 10;
ptr[1] = 20;
ptr[2] = 30;
for (int i = 0; i < 3; i++) //반복문 사용해서 값 출력
{
printf("%d \n", ptr[i]);
}
free(ptr); //동적할당한 메모리 해제
}
입력한 값 만큼 동적할당
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
int main()
{
int* ptr; //포인터 변수 선언
int num; //입력받을 변수선언
printf("값입력: ");
scanf("%d", &num); //scanf사용하여 입력
ptr = (int*)malloc(sizeof(int) * num); //num 만큼 동적할당
for (int i = 0; i < num; i++) //반복문 사용하여 prt 값 대입
{
ptr[i] = i;
}
for (int i = 0; i < num; i++) //반복문 사용해서 값 출력
{
printf("%d \n", ptr[i]);
}
free(ptr); //동적할당한 메모리 해제
}
반응형
'Programming > C' 카테고리의 다른 글
백준기본입출력 10991,10992 (c언어) (0) | 2021.08.13 |
---|---|
c언어 구조체 및 typedef 활용예제 (0) | 2021.08.13 |
c언어 출력타입 종류 (0) | 2021.08.07 |
c언어 포인터 연산 예제 (0) | 2021.08.07 |
c언어 헤더파일생성 (0) | 2021.08.07 |