string c++ 大小写转换
时间: 2024-12-14 13:12:55 浏览: 25
在C++中,你可以使用标准库提供的函数来完成字符串的大写和小写转换。以下是两个常用的方法:
1. **tolower() 和 toupper() 函数**:
- `std::tolower()` 函数将输入的字符转换为小写,适用于ASCII字符集。
- `std::toupper()` 函数将输入的字符转换为大写,同样适用于ASCII字符集。
示例:
```cpp
#include <cctype>
std::string str = "Hello World";
for (char& c : str) {
if (isupper(c)) { // 检查是否为大写字母
c = tolower(c); // 转换为小写
} else if (islower(c)) { // 检查是否为小写字母
c = toupper(c); // 转换为大写
}
}
```
2. **std::transform() 函数**:
如果你想对整个字符串的所有字符进行批量转换,可以使用`std::transform()`和相应的迭代器。例如:
```cpp
#include <algorithm>
#include <cctype>
std::string str = "Hello World";
std::transform(str.begin(), str.end(), str.begin(), ::tolower);
```
这里,`::tolower`是一个字符指针函数风格的引用,它会被应用到每个字符上。
阅读全文