VC定义动态一维数组

来源:百度知道 编辑:UC知道 时间:2024/05/22 11:50:39
VC定义动态一维数组,我知道代码,我查到了网上,我想问下这几个函数的意思,谢谢,
int *array =(int*)malloc(sizeof(int)*n); // n 为你要定义数组的大小
这个吧?

int *array /*申明指针*/=(int*)malloc(sizeof(int)*n); /*分配大小为int n倍的空间,并且把首地址传给array*/

楼上的真不要脸,占了1楼,看我答了就抄我的

void* malloc( size_t bytes );
malloc函数的原型如上。该函数从堆中分配指定大小的字节数的内存,返回将内存地址作为返回值返回。
所以
int *array =(int*)malloc(sizeof(int)*n);
就是从堆中分配sizeof(int)*n,一般也就是4*n字节大小的内存,然后返回给array。

sizeof(int)获取int类型数据占据的内存大小,*n就是分配了大小为n个int类型的数据内存