欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

c语言关于空数组的问题解析

程序员文章站 2023-01-24 18:53:57
c++中定义一个数组,没有绝对空的概念。 因为,定义数组后,就会给数组分配内存空间,该空间可能以前被其它程序使用过,其中留有原来写入的数据(对于本程序来说,就是垃圾数据),也可能没有被使用过,其内存...

c++中定义一个数组,没有绝对空的概念。

因为,定义数组后,就会给数组分配内存空间,该空间可能以前被其它程序使用过,其中留有原来写入的数据(对于本程序来说,就是垃圾数据),也可能没有被使用过,其内存数据值为0.

如果想在定义数组后,将数组内容清为0,则可以采用以下三种方法:

初始化为0

int arr[10]={0}; //该语句置第一个元素为0,其余元素系统自动清为0.

手工逐个元素置0

int arr[10]; //只定义,未初始化
for( int i=0;i<10;i++ ) //采用循环遍历数组,逐位赋值为0
 a[i]=0;

采用memset()函数置数组元素为0

#include  //memset()函数头文件
int arr[10]; //只定义,未初始化
memset( arr, 0, sizeof(arr) ); //memset函数,将从arr开始的sizeof(arr)个字节置为0