<分区>
我正在尝试检查通过 malloc()
分配的指针内存的大小。为此,我编写了一个程序,其中我最初分配的内存大小为 10。然后插入一个 for 循环并使用 realloc()
不断增加内存。我正在使用 sizeof
检查内存大小。
这是我的代码:
int main(int argc, _TCHAR* argv[])
{
char *ptr;
long int size;
int count;
ptr = (char *) malloc(10);
size = sizeof(*ptr);
printf("size of ptr is= %d\n",size);
for(count=11;count<=100;count++)
{
ptr=(char *) realloc(ptr,count);
size = sizeof(*ptr);
printf("size of ptr is= %d\n",size);
}
return 0;
}
但我总是得到“1”作为输出:
所以,请告诉我是否还有其他方法可以做到这一点。