C++字符串大小写转换方法

发布时间:2024-10-09 14:03:18 作者:小樊
来源:亿速云 阅读:78

在C++中,可以使用标准库中的<algorithm><cctype>头文件提供的函数来实现字符串的大小写转换。以下是两种常见的方法:

方法一:使用std::transformstd::toupper/std::tolower函数

#include <iostream>
#include <string>
#include <algorithm>
#include <cctype>

std::string toUpperCase(const std::string& str) {
    std::string result = str;
    std::transform(result.begin(), result.end(), result.begin(), ::toupper);
    return result;
}

std::string toLowerCase(const std::string& str) {
    std::string result = str;
    std::transform(result.begin(), result.end(), result.begin(), ::tolower);
    return result;
}

int main() {
    std::string str = "Hello, World!";
    std::cout << "Original string: " << str << std::endl;
    std::cout << "Uppercase string: " << toUpperCase(str) << std::endl;
    std::cout << "Lowercase string: " << toLowerCase(str) << std::endl;
    return 0;
}

方法二:使用std::algorithmstd::swap函数

#include <iostream>
#include <string>
#include <algorithm>

void toUpperCase(std::string& str) {
    std::swap(str[0], str[0] | 32);
    for (size_t i = 1; i < str.size(); ++i) {
        str[i] = std::toupper(str[i]);
    }
}

void toLowerCase(std::string& str) {
    std::swap(str[0], str[0] & ~32);
    for (size_t i = 1; i < str.size(); ++i) {
        str[i] = std::tolower(str[i]);
    }
}

int main() {
    std::string str = "Hello, World!";
    std::cout << "Original string: " << str << std::endl;
    toUpperCase(str);
    std::cout << "Uppercase string: " << str << std::endl;
    toLowerCase(str);
    std::cout << "Lowercase string: " << str << std::endl;
    return 0;
}

这两种方法都可以实现字符串的大小写转换。第一种方法使用了std::transformstd::toupper/std::tolower函数,而第二种方法使用了std::algorithmstd::swap函数。你可以根据自己的需求和喜好选择其中一种方法。

推荐阅读:
  1. C++中如何高效使用Array类
  2. C++ Array类与STL容器的对比

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

c++

上一篇:string库删除字符有几种方式

下一篇:字符串比较忽略大小写实现

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》