c语言中怎么把一维数组初始化为全零啊,不用循环

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c语言中怎么把一维数组初始化为全零啊,不用循环相关的知识,希望对你有一定的参考价值。

参考技术A 具体初始化方法可以参考如下程序段:(方法一)
int a[5] = 0; // 将整型数组a的每个元素都初始化为0
或者也可以用如下方法进行初始化:(方法二)
int a[5] = 0, 0, 0, 0, 0; // 将整型数组a的每个元素都初始化为0,初始化效果同上
方法一的初始化方法是将数组元素都初始化为同一个数值;
方法二的初始化方法可以分别对数组的每个元素进行初始化,每个元素的数值可以不同。

如何将一个一维数组中的所有数都赋值为-1?不用循环。

C语言中,已经定义了一个整型一维数组。然后想将这个整型数组赋值为-1.不用循环。
有的答案写:“一些特殊的数可以用memset,比如全置-1就memset(arr,0xff,sizeof(arr));”
但是看不懂。
请写出详细代码。不用写头文件,直接写主函数,数组名称自定义。
求解答。谢谢大家。

C语言还是C++;C++可以办到。C语言不用循环估计不好办。

C语言,如果是赋值为0,不用说,自然是可以的,只要写TYPE x[100]=0;这样就可以;这对任何类型都适用。

float a[100]=0;
int b[100]=0;

C语言,要赋值成-1的话,对于所有的整数类型([unsigned] char/int/short/long等)都是可以实现的,用memset就可以;非整数类型,如float和double就不行。

C语言,要赋值成1的话,只有char和unsigned char可以做到,用memset,其他类型我还想不出有啥方法。

C++的话,要依次赋值为1,0,-1, 1,0,-1, 1, 0, -1 ...这样的,不用循环都可以办到。追问

C语言,不是C++。是整数类型。能写一下代码吗?如何使用memset?

参考技术A memset(数组名,要赋的值,sizeof(数组名))

以上是关于c语言中怎么把一维数组初始化为全零啊,不用循环的主要内容,如果未能解决你的问题,请参考以下文章

C语言中怎么把一维数组初始化都为0,

C语言数组

如何将一个一维数组中的所有数都赋值为-1?不用循环。

c语言 图形方式初始化

C语言一维数组赋值方法

C语言过滤相同行算法