如何根据数组元素修复我的循环C ++

时间:2016-12-05 11:00:21

标签: c++

我有一个数组和一个for循环。我希望for循环停止,具体取决于数组所具有的元素数量。

例如,如果我有int array []={1,0,1,0,1} 我希望循环执行代码5次。类似于字符串.length()的函数,但对于整数。使用简单代码的示例将是最佳答案:)

  像这样的伪代码

for(int b=0;b<array-length;b++)

3 个答案:

答案 0 :(得分:1)

除非你需要索引,否则以下工作正常:

int ar[] = { 1, 2, 3, 4, 5 };
for (auto i : ar) {
    std::cout << i << std::endl;
}

答案 1 :(得分:1)

由于问题是用C ++标记的,我不得不建议std::vector作为最佳解决方案。 (也是为了将来)

请注意:std::vector

所以对你来说,这就像下面这样:

std::vector<int> array {1,0,1,0,1};
for(int i = 0; i < array.size(); i++)
   ...

或者在最糟糕的情况下,std::array如果您不想要矢量的功能。

另请参阅:std::array

答案 2 :(得分:0)

要查找数组的长度,请使用此代码

int array[5];
std::cout << "Length of array = " << (sizeof(array)/sizeof(*array)) << std::endl;

所以在你的情况下,它将是例如:

int array[5];
for(int b=0; b < sizeof(array)/sizeof(*array); b++){
   std::cout << array[b] << std::endl;
}