使用while/do-while循环设置数组元素

3

我有些困难理解如何使用while循环来得到与这个for循环相同的结果:

for (int i=0; i<N; i++){
    int datum[i] = 0;
}

基本上,将数组datum[N]中的所有元素都设置为0。 以下代码在这方面是否有意义,还是我漏掉了什么?谢谢

int i = 0;
while (i < N){
    datum[i] = 0;
    i++;
}

不,你不是 :) 但是对于第一个循环,为什么要用 int?你不能重新声明 datum[i] - Rakete1111
int datum[N] = {0};将它们初始化为零通常会更好。 - Scott Stainton
@ScottStainton:在C++中,[int datum[N] = {}]更有逻辑意义。 - Lightness Races in Orbit
2个回答

3

这两个代码示例将产生相同的结果。

int i = 0;
while (i < N)
{
     datum[i] = 0;
     i++;
}

for (int i=0; i<N; i++) 
{
   datum[i] = 0; // remove int because you will be redclaring datum
}

2
不要使用它们中的任何一个。当您声明 datum 时,请像这样进行:
std::vector<int> datum(N);

完成。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接