배열과 malloc()
아더
2023.04.01
안녕하세요. 배열과 메모리 할당에 대해 궁금한 점이 있어서 질문을 올립니다.
입력받은 숫자만큼 배열을 할당하는 문제를 풀고 있는데요, 어떻게 해야 하는 지 모르겠습니다.
열심히 머리를 굴린 결과 생각해 낸 방법이 malloc()으로 메모리를 할당하고, realloc()으로 메모리를 늘려주는 방법을
생각해보았습니다.
그러다보니 궁금한 점이 생겼습니다.
int arrange[10]; 라고 배열 10개를 선언 해주는 것과
int *arrange;
arragne=(int *)malloc(10*sizeof(int));
이렇게 해주는 것이 무슨 차이가 있을가요?
첫 번째 것도 배열을 통하여 10개의 공간을 만드는 것이고, 두 번째 것도 int 사이즈의 10배 만큼의 메모리를 할당하고
그 메모리의 주소를 가리키는 포인터를 받는 것이므로 같은 역할이 아닐까요?
고수님들,
1. 입력받은 숫자만큼 데이터를 저장할 배열을 만드는 방법하고
2. 위의 2가지 방법의 차이점에 대해서 알려주시면 정말 감사드리겠습니다.
그럼 즐프~