c++判断数组中元素的个数
时间: 2024-10-22 10:03:33 浏览: 16
C++ Vector 动态数组的实现
在C++中,如果你有一个动态数组或者容器,如std::vector,你可以通过成员函数`size()`来获取数组中元素的个数。对于动态数组(未初始化的C风格数组),你需要遍历整个数组并计数非零元素,因为它们占用了内存空间。下面是一个简单的例子:
```cpp
// 对于std::vector<int> vec:
int count = vec.size(); // 直接获取元素个数
// 对于C风格数组:
int arr[5] = {0, 1, 2, 3, 4};
int count_in_array = 0;
for (int i = 0; i < sizeof(arr) / sizeof(arr[0]); i++) {
if (arr[i]) {
count_in_array++;
}
}
```
如果不确定元素是否已经初始化,你还可以使用`std::count_if`函数,它会返回满足特定条件的元素个数:
```cpp
#include <algorithm>
int count_with_condition(const std::array<int, 5>& arr) {
return std::count_if(arr.begin(), arr.end(), [](int x){ return x != 0; });
}
```
阅读全文