如何将数组初始化为全0?
C语⾔中,声明数组的语句:
int arr[100];
这样声明得到的数组⾥⾯的存储的是随机的我们不知道的数据,对⽤户来说就是垃圾。有许多情况我们要将数组初始化为全零的情况才能进⾏其他操作。
最简单的⽅法就是⽤⼀个循环吧数组所有元素设置为0:
int arr[100];
int i = 0;
for(i = 0 ; i < 100 ; i++)
arr[i] = 0; //This will make all ZERO
我们还可以利⽤其他⼏种⽅式做到初始化数组为0:
1、全局变量和静态变量初始化时会⾃动被设置为0。如果们声明全局变量,那么他在运⾏前会变成全0。
int arr[1024]; // This is global
int main(void)
{
//statements
}
2、对于局部数组我们还有简写的初始化语法。如果⼀个数组被部分初始化,没有被初始化的元素会被⾃动设置为相应类型的0。这是编译器⾃动完成的。可以这样写:
int main(void)
{
int arr[1024] = {0}; // This will make all ZERO
// statements
}
3、你还可以⽤memset函数在程序开始时初始化数组。这条命令这在你已经修改了数组之后⼜想将它重置为全0特别有⽤。
数组定义时初始化int arr[1024];
arr[5] = 67;
memset(ZEROARRAY, 0, 1024); //This will reinitialize all to ZERO
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论