我希望能够改变我的数组大小,因此我这样创建了一个数组:
int* array;
array = malloc(sizeof(int)*10);//10 integer elements
我可以像通常一样使用这个变量作为数组,但是当我尝试像这样查找它的大小时:
size = sizeof(array)/sizeof(int);
我得到了答案1,因为它没有将其识别为指向数组的指针。
如何获取数组的大小? (我知道它不是技术上的数组,但有没有办法计算分配的整个内存块的大小?)
另外,我在描述中所述的是否正确?如果我在技术上有错误,请纠正我。
sizeof
不知道malloc
。 - cnicutar