【C++】toupper函数和tolower函数(详解)

toupper 和 tolower 是 C++ 标准库中的两个函数,用于字符的大小写转换。这两个函数都定义在 <cctype> 头文件中。以下是它们的详细介绍及代码示例。

1. toupper 函数

toupper 函数用于将小写字符转换为对应的大写字符。如果输入的字符不是小写字母,函数将返回该字符本身。

函数原型:
int toupper(int c);

参数:
  • c:要转换的字符(以 int 类型传递,但实际是 char 类型)。
返回值:
  • 返回转换后的大写字符(int 类型)。如果 c 不是小写字母,则返回 c 本身。

2. tolower 函数

tolower 函数用于将大写字符转换为对应的小写字符。如果输入的字符不是大写字母,函数将返回该字符本身。

函数原型:
int tolower(int c);

参数:
  • c:要转换的字符(以 int 类型传递,但实际是 char 类型)。
返回值:
  • 返回转换后的小写字符(int 类型)。如果 c 不是大写字母,则返回 c 本身。

代码示例

以下是一个使用 toupper 和 tolower 函数的简单示例:

#include <iostream>
#include <cctype>  // 包含 toupper 和 tolower 函数的头文件

int main() {
    // 示例字符串
    std::string text = "Hello, World! 123";

    // 使用 toupper 函数将字符串转换为大写
    std::cout << "Original text: " << text << std::endl;
    std::cout << "Uppercase text: ";
    for (char c : text) {
        std::cout << static_cast<char>(std::toupper(c));
    }
    std::cout << std::endl;

    // 使用 tolower 函数将字符串转换为小写
    std::cout << "Original text: " << text << std::endl;
    std::cout << "Lowercase text: ";
    for (char c : text) {
        std::cout << static_cast<char>(std::tolower(c));
    }
    std::cout << std::endl;

    return 0;
}

输出结果:


注意事项

  1. 字符集‌:toupper 和 tolower 函数的行为依赖于当前的字符集(locale)。对于大多数常见的字符集(如 ASCII),这些函数都能正常工作。但在某些特殊的字符集下,可能会有不同的行为。

  2. 非字母字符‌:对于非字母字符(如数字、标点符号),这两个函数会直接返回原字符,不会进行任何转换。

  3. 类型转换‌:由于函数返回的是 int 类型,因此在将返回值赋给 char 类型变量时,需要进行类型转换(如上例中的 static_cast<char>)。

通过这两个函数,可以方便地在 C++ 程序中进行字符的大小写转换操作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值