使用toupper函数可安全转换字符大小写,示例中将'b'转为'B';遍历字符串结合toupper可批量转换,如"hello world"变为"HELLO WORLD";手动通过ASCII码减32也可实现,适用于理解编码原理,但需判断字符范围避免误操作。

在C++中,将小写字母转换为大写可以通过多种方式实现。最常用的方法是使用标准库函数或手动判断ASCII码值进行转换。下面介绍几种实用且清晰的实现方法。
使用toupper函数转换单个字符
头文件cctype提供了toupper函数,可以将一个小写字母转换为对应的大写形式。如果不是小写字母,它会保持原样。
示例代码:
#include iostream>
#include
using namespace std;
int main() {
char ch = 'b';
ch = toupper(ch);
cout
return 0;
}
遍历字符串将所有小写转大写
对于整个字符串,可以逐个字符调用toupper函数。
立即学习“C++免费学习笔记(深入)”;
示例代码:
#include
#include
#include
using namespace std;
int main() {
string str = "hello world";
for (char &c : str) {
c = toupper(c);
}
cout
return 0;
}
手动通过ASCII码实现大小写转换
小写字母'a'到'z'的ASCII码比对应大写字母'A'到'Z'大32。因此可以通过减去32完成转换。
示例代码:
char toUpper(char c) {
if (c >= 'a' && c
return c - 32;
}
return c;
}
这种方法不依赖库函数,适合学习理解字符编码原理。
基本上就这些常见方法。使用toupper最简洁安全,手动计算则有助于理解底层机制。不复杂但容易忽略的是:确保只对字母字符操作,避免误改其他符号。











