malloc
주위에 래퍼 함수를 작성하려고합니다. 필자가 작성한 코드는 다음과 같습니다.하지만 작동 여부는 확실하지 않습니다.malloc 주위 래퍼 작동합니까?
누군가가 그것을 살펴보고 제대로 작동하는지 알려주고, 그렇지 않은 경우 알려주시겠습니까? 여기
int main()
{
int i=1;
char *k;
while(i<3)
{
i++;
k = (char *) CountMalloc(1024);
printf(" Total mem : %d \n Memory Address:%x \n",Totalmem,k);
}
printf(" Exiting\n");
return 0;
}
내가 메모리를 할당하고 무효를 포인터를 전달하려고하는 기능입니다. 포인터를 선언하고 함수의 주소를 함수에 전달하면
malloc
함수 호출을 호출하여 전달 된 포인터에 주소를 할당합니다. 그러나 나는 다음과 같은 코드가 작동하는지 알고 싶어
void * CountMalloc(int size)
{
char *p;
Totalmem += size;
return (malloc (size));
}
size 인수에'size_t'를 사용하는 것이 더 좋지만, 그렇지 않으면 왜 작동하지 않는지 알 수 없습니다. – MightyPork
C에서'malloc'을 형 변환하지 마십시오. 또한, 보통'main (void)'라고 씁니다. – gsamaras
'-Wall'로 컴파일하면 몇 가지 경고가 나타납니다. 왜 이렇게되는지 보도록하겠습니다. –