C++小写字母转换为大写字母
时间: 2024-06-12 17:10:05 浏览: 202
C++中可以使用两种方法将小写字母转换为大写字母。第一种方法是利用ASCII码,将小写字母的ASCII码减去32,得到对应的大写字母的ASCII码,然后再将其转换为字符输出。第二种方法是使用STL库中的函数toupper(char s),直接将小写字母转换为大写字母。两种方法都可以实现小写字母转换为大写字母的功能。
相关问题
C++小写字母转换为大写字母程序
以下是C++小写字母转换为大写字母的程序:
#include <iostream>
#include <cstring>
using namespace std;
int main() {
char str[101];
cin.getline(str, 101); // 读入字符串
int len = strlen(str);
for (int i = 0; i < len; i++) {
if (str[i] >= 'a' && str[i] <= 'z') { // 判断是否为小写字母
str[i] -= 32; // 转换为大写字母
}
}
cout << str << endl; // 输出转换后的字符串
return 0;
}
C++小写字母转换成大写,多种方式
在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`函数。
阅读全文