반응형
#include <cstdio>
#include <cstdlib>
#include <malloc.h>
int *temp, i = 0;
void test(int input);
int main()
{
int input = 0;
while(1)
{
printf("입력하세요 : ");
scanf("%d", &input);
test(input);
}
return 0;
}
void test(int input)
{
i += 1;
temp = (int *)realloc(temp, sizeof(int) * i);
temp[i - 1] = input;
for(int j = 0; j <= i - 1; j++)
{
printf("res = %d\n", temp[j]);
}
// 이렇게 할 경우 배열의 경우 배열의 크기가 나오지만 포인터 변수로
// 동적 할당 했을 경우 포인터 변수의 크기가 나옴.
printf("sizeof를 사용한 크기 측정 : %d\n", sizeof(temp));
// 동적 할당된 메모리의 크기를 확인하려면 _msize 함수를 사용해야 함...
// _msize 함수를 사용하기 위해선 malloc.h를 include 해야 함
printf("_msize를 사용한 크기 측정 : %d\n\n", _msize(temp));
}
반응형
'C > Study' 카테고리의 다른 글
[C] C프로그래밍이 실행되기까지 (1) | 2024.12.20 |
---|---|
[C] __int64 (0) | 2024.12.20 |
[C] 리본 모양 출력 (조건문 하나만 사용) (0) | 2024.12.18 |
[C] 최대 공약수 구하는 함수 (유클리드 알고리즘) (0) | 2024.12.18 |
[C] scanf() 함수의 입력 형식 기호 (0) | 2024.12.16 |