C++小写字母转换成大写,多种方式
时间: 2024-10-21 13:15:48 浏览: 35
在C++中,将小写字母转换为大写可以使用库函数`toupper()`,它是C标准库cctype的一部分。如果你使用C++11及以上版本,也可以利用`std::toupper()`,它属于<ctime>头文件。
以下是两种常见的方法:
1. 使用库函数`toupper()`:
```cpp
#include <cctype>
#include <string>
std::string to_upper(const std::string &str) {
std::string result;
for (char c : str) {
if (islower(c)) { // 检查字符是否为小写
result += toupper(c); // 转换并添加到结果字符串
} else {
result += c; // 非小写的字符不变
}
}
return result;
}
```
2. C++11及以后版本使用`std::transform()`和`std::toupper()`:
```cpp
#include <algorithm> // 包含transform和toupper
#include <cctype>
#include <string>
std::string to_upper(const std::string &str) {
std::transform(str.begin(), str.end(), str.begin(), ::toupper);
return str;
}
```
在这两个例子中,`::toupper`是一个同名函数指针,代表`toupper`函数。
阅读全文