摘要
本文介绍了在 C++中将小写字母转换为大写字母的不同技术,如 toupper()函数、transform 算法、循环和字符串流。
C++ 提供了几种简单直接的方法来将字符串中的小写字符转换为大写。这包括像 toupper()这样的内置函数,像transform()这样的算法,以及字符串流。
让我们探索一些常用的在 C++代码中将小写字母转换为大写字母的技术。
介绍
在 C++中处理字符串数据时,您可能需要通过将小写字母转换为大写字母来标准化大小写。以下是一些方法:
- toupper() 函数 - 简单的大写转换
- transform 算法 - 将 toupper() 应用于整个字符串
- for 循环 - 手动迭代和转换
- stringstreams - 设置大写格式标志
- 在线工具 - 快速大小写转换
我们将逐步介绍在 C++字符串中更改大小写的每种方法的代码示例。
toupper() 函数
头文件
1#include <iostream>
2#include <cctype>
3
4int main() {
5
6 char lower = 'a';
7 char upper = toupper(lower);
8
9 std::cout << upper << std::endl; // 'A'
10
11 return 0;
12}
toupper() 接受一个字符作为输入并返回其大写形式。
transform 算法
要将整个字符串转换为大写,可以使用
1#include <iostream>
2#include <algorithm>
3#include <cctype>
4
5int main() {
6
7 std::string lower = "hello world";
8
9 transform(lower.begin(), lower.end(), lower.begin(), ::toupper);
10
11 std::cout << lower << std::endl; // "HELLO WORLD"
12
13 return 0;
14}
transform 将 toupper() 应用于字符串的每个字符,原地修改。
for 循环
为了更加手动地控制,可以使用 for 循环遍历字符串:
1#include <iostream>
2
3int main() {
4
5 std::string lower = "hello world";
6
7 for(int i=0; i<lower.length(); i++) {
8 lower[i] = toupper(lower[i]);
9 }
10
11 std::cout << lower << std::endl; // "HELLO WORLD"
12
13 return 0;
14}
这会遍历每个字符并将其转换为大写。
免费在线大小写转换工具
对于快速的大小写转换,可以使用像 String to Uppercase 这样的网站。
粘贴您的 C++字符串,获得大写版本而无需任何编码!
字符串流
C++字符串流可以配置为以大写形式输出字符串:
1#include <iostream>
2#include <sstream>
3
4int main() {
5
6 std::string lower = "hello world";
7
8 std::stringstream ss;
9 ss << std::uppercase << lower;
10
11 std::string upper = ss.str();
12
13 std::cout << upper << std::endl; // "HELLO WORLD"
14
15 return 0;
16}
大写标志将插入的字符串格式化为大写。
使用场景
C++中将字符串转换为大写的一些常见用例包括:
- 将用户输入转换为标准格式
- 按约定以大写形式定义常量
- 执行不区分大小写的字符串比较
大写字符串在 C++程序中有许多应用。
结论
在 C++中,将小写字符串转换为大写可以使用以下方法:
- 对于单个字符可以使用 toupper() 函数
- 对于完整字符串可以使用 transform 结合 toupper() 函数
- 使用 for 循环遍历每个字符
- 使用配置为大写的 stringstreams
- 在线转换工具
在 C++中,toupper() 函数和 transform 算法提供了改变大小写的最直接方式。
将字符串转换为大写或小写是在 C++中进行字符串处理和比较的有用技巧。