c++中字符串数组怎么计算字符串个数
时间: 2024-09-29 09:02:17 浏览: 48
字符串与字符数组的区别-C++程序设计 谭浩强
在 C++ 中,计算字符串数组中的元素个数通常涉及到数组长度的获取。如果你有一个字符数组 `char strArray[]` 或者 `std::string` 类型的数组,你可以通过以下方法:
1. 对于字符数组 `strArray`,它实际上是 C 风格的数组,你可以直接用数组名加数组大小减一的方式来得到元素个数,因为数组下标从0开始,最后一个元素的索引是 `sizeof(strArray) / sizeof(strArray[0]) - 1`。
```cpp
int stringCount = sizeof(strArray) / sizeof(strArray[0]);
```
2. 对于 `std::string` 类型的数组,由于每个元素占用的空间不是固定的(取决于内部存储的实际内容),所以你需要遍历整个数组来计数。可以使用标准库提供的算法 `std::count_if` 来完成这个任务:
```cpp
#include <algorithm>
#include <vector>
size_t stringCount = std::count_if(std::begin(arr), std::end(arr), [](const std::string& s) { return !s.empty(); });
```
这里假设 `arr` 是一个 `std::vector<std::string>` 或其他支持迭代的容器。
阅读全文