有时候可能需要把一个数组清零,意思是全部数据都用0填充,可以用库函数来实现。假设数组名为a,无论什么类型也无论几维都一样,可以写成
memset(a,0,sizeof(a))
要看数组所使用的内存空间。
1、如果是局部函数栈空间中的数组,有程序自动回收。
void f(){
int a[2] = {1,2} //局部栈空间上的数组,程序自动回收
}
2、如果是动态内存分配 的数组,在c语言中使用free()将其释放。回收有 *** 作系统的堆管理器来进行 *** 作。
void f(){
int *p = (int *) malloc(2 * sizeof(int))
free(p) //释放
}
数组在程序设计中,为了处理方便, 把具有相同类型的若干变量按有序的形式组织起来。这些按序排列的同类数据元素的集合称为数组。在C语言中, 数组属于构造数据类型。
一个数组可以分解为多个数组元素,这些数组元素可以是基本数据类型或是构造类型。因此按数组元素的类型不同,数组又可分为数值数组、字符数组、指针数组、结构数组等各种类别。
例如:
int a[10]说明整型数组a,有10个元素。
float b[10],c[20]说明实型数组b,有10个元素,实型数组c,有20个元素。
char ch[20]说明字符数组ch,有20个元素。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)