用c++改变字符串的大小写
时间: 2024-12-20 11:15:14 浏览: 7
在C++中,你可以使用标准库提供的函数来改变字符串的大小写。以下是两个常用的方法:
1. **使用`std::transform`和`std::tolower` / `std::toupper`**:
如果你想将整个字符串转换为小写,可以遍历每个字符并应用`std::tolower`;如果想转为大写,则用`std::toupper`。例如:
```cpp
#include <algorithm>
#include <cctype>
std::string toLowercase(const std::string& str) {
std::transform(str.begin(), str.end(), str.begin(), ::tolower);
return str;
}
std::string toUppercase(const std::string& str) {
std::transform(str.begin(), str.end(), str.begin(), ::toupper);
return str;
}
```
2. **直接操作字符数组**:
如果你的字符串是一个字符数组,也可以逐个字符处理:
```cpp
void lowercase(char* str) {
for (char& c : str) {
if ('A' <= c && c <= 'Z') { // 如果字符是大写字母
c = static_cast<char>(c + ('a' - 'A')); // 转换为小写
}
}
}
void uppercase(char* str) {
for (char& c : str) {
if ('a' <= c && c <= 'z') { // 如果字符是小写字母
c = static_cast<char>(c - ('a' - 'A')); // 转换为大写
}
}
}
```
记得在使用这些函数之前包含对应的头文件,并确保已经包含了`<cctype>`。
阅读全文