C++ 在程序开始时填充数组
是否有办法在程序开始时填充数组?我需要用100个元素填充一个数组,所有元素都应该是零 这是我的阵列:C++ 在程序开始时填充数组,c++,arrays,C++,Arrays,是否有办法在程序开始时填充数组?我需要用100个元素填充一个数组,所有元素都应该是零 这是我的阵列: const int arraysize = 100; int a[arraysize]; 我知道我应该使用for循环,但我不知道在代码中把for循环放在哪里。如果我把它放在总管里,它也不起作用。因为一个单独的函数正在使用数组。阵列未在主应用程序中使用 For循环: for (int i = 0; i < 100; i++) { a[i] = 0; } for(int i=0;i
const int arraysize = 100;
int a[arraysize];
我知道我应该使用for
循环,但我不知道在代码中把for
循环放在哪里。如果我把它放在总管里,它也不起作用。因为一个单独的函数正在使用数组。阵列未在主应用程序中使用
For循环:
for (int i = 0; i < 100; i++)
{
a[i] = 0;
}
for(int i=0;i<100;i++)
{
a[i]=0;
}
请看这里:
如果T是数组类型,则每个元素初始化为零
这仅适用于用零填充数组
请看这里:
如果T是数组类型,则每个元素初始化为零
这仅适用于用零填充数组。可用于初始化数组。可以为整个数组、数组的开头或数组中的任何一个指定值。任何未指定的部分都将初始化为0或默认构造(取决于数组的类型)。看看下面的例子
#include <iostream>
int main()
{
const int arraysize = 10;
int a[arraysize] = {1, 2, 3, 6, 8, 5, 5, 0, 2, 7};
int b[arraysize] = {1, 2, 3};
int c[arraysize] = {};
for(int i = 0; i < arraysize; ++i) {
std::cout << a[i] << ' ' << b[i] << ' ' << c[i] << std::endl;
}
return 0;
}
可用于初始化数组。可以为整个数组、数组的开头或数组中的任何一个指定值。任何未指定的部分都将初始化为0或默认构造(取决于数组的类型)。看看下面的例子
#include <iostream>
int main()
{
const int arraysize = 10;
int a[arraysize] = {1, 2, 3, 6, 8, 5, 5, 0, 2, 7};
int b[arraysize] = {1, 2, 3};
int c[arraysize] = {};
for(int i = 0; i < arraysize; ++i) {
std::cout << a[i] << ' ' << b[i] << ' ' << c[i] << std::endl;
}
return 0;
}
我不知道为什么还没有人提到
memset
。是的,我知道如果要用0或-1填充整个整数数组,但是,你给出的例子表明你想用0来填充整个数组。这就是为什么我要向你解释代码> MyStuts<代码>。<代码> MyStuts<代码>是C代码,附带代码< >代码>或者你可以在C++中添加代码< <代码>包含< /代码> < /P>
清零
此C库函数void*memset(void*arrName,int-valueForAll,sizeof(arrName))通过参数arrName将值valueForAll复制到数组中指向的每个元素
例子
下面的示例显示了memset()
函数的用法
const int arraysize = 100;
int i,a[arraysize];
memset(a,0,sizeof(a)); /* fills the whole array with 0 */
memset(a,-1,sizeof(a)); /* fills the whole array with -1 */
for (i = 0; i < 100; i++)
printf("%d\n",a[i]);
const int arraysize=100;
int i,a[阵列化];
memset(a,0,sizeof(a));/*用0填充整个数组*/
memset(a,-1,sizeof(a));/*用-1填充整个数组*/
对于(i=0;i<100;i++)
printf(“%d\n”,a[i]);
我不知道为什么还没有人提到memset
。是的,我知道如果你想用0或-1填充整个整数数组,但是,你给出的例子表明你想用0来填充整个数组。这就是为什么我要向你解释代码> MyStuts<代码>。<代码> MyStuts<代码>是C代码,附带代码< >代码>或者你可以在C++中添加代码< <代码>包含< /代码> < /P>
清零
此C库函数void*memset(void*arrName,int-valueForAll,sizeof(arrName))通过参数arrName将值valueForAll复制到数组中指向的每个元素
例子
下面的示例显示了memset()
函数的用法
const int arraysize = 100;
int i,a[arraysize];
memset(a,0,sizeof(a)); /* fills the whole array with 0 */
memset(a,-1,sizeof(a)); /* fills the whole array with -1 */
for (i = 0; i < 100; i++)
printf("%d\n",a[i]);
const int arraysize=100;
int i,a[阵列化];
memset(a,0,sizeof(a));/*用0填充整个数组*/
memset(a,-1,sizeof(a));/*用-1填充整个数组*/
对于(i=0;i<100;i++)
printf(“%d\n”,a[i]);
哦,好的。我现在明白了。谢谢你,好的。我现在明白了。非常感谢inta[arraySize]{}
inta[arraySize]{}
。