C++ 在程序开始时填充数组

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

是否有办法在程序开始时填充数组?我需要用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<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]{}