C++对string进行大小写转换操作方法
作者:YAIMZA 发布时间:2023-11-03 04:32:59
标签:C++,string,大小写转换
C++对string进行大小写转换操作方法
方法一:
使用C语言之前的方法,使用函数,进行转换
#include <iostream>
#include <string>
using namespace std;
int main()
{
string s = "ABCDEFG";
for( int i = 0; i < s.size(); i++ )
{
s[i] = tolower(s[i]);
}
cout<<s<<endl;
return 0;
}
方法二:
通过STL的transform算法配合的toupper和tolower来实现该功能
#include <iostream>
#include <algorithm>
#include <string>
using namespace std;
int main()
{
string s = "ABCDEFG";
string result;
transform(s.begin(),s.end(),s.begin(),::tolower);
cout<<s<<endl;
return 0;
}
补充:C++ string大小写转换
1、通过单个字符转换,使用C的toupper、tolower函数实现
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
int main(){
string str = "ancdANDG";
cout << "转换前的字符串: " << str << endl;
for(auto &i : str){
i = toupper(i);//i = tolower(i);
}
cout << "转换后的字符串: " << str << endl;
//或者
for(int i = 0;i < str.size();++i){
str[i] = toupper(s[i]);//str[i] = toupper(s[i]);
}
cout << "转换后的字符串: " << str << endl;
return 0;
}
2、通过STL的transform实现
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
int main(){
string str = "helloWORLD";
cout << "转换前:" << str << endl;
//全部转换为大写
transform(str.begin(), str.end(), str.begin(), ::toupper);
cout << "转换为大写:" << str << endl;
//全部转换为小写
transform(str.begin(), str.end(), str.begin(), ::tolower);
cout << "转换为小写:" << str << endl;
//前五个字符转换为大写
transform(str.begin(), str.begin()+5, str.begin(), ::toupper);
cout << "前五个字符转换为大写:" << str << endl;
//后五个字符转换为大写
transform(str.begin()+5, str.end(), str.begin()+5, ::toupper);
cout << "前五个字符转换为大写:" << str << endl;
return 0;
}
来源:https://blog.csdn.net/qq_37941471/article/details/81988702


猜你喜欢
- 本文实例讲述了C#邮件定时群发工具Atilia用法。分享给大家供大家参考。具体如下:一、Atilia可以做什么Atilia是一个基于命令行的
- C#判断数据类型的简单示例代码:int i = 5; Console
- 今天要分享一个非常简单的功能:使用Android原生控件Gallery实现照片拖动的特效实现思路如下:在布局文件中定义一个Gallery控件
- sum(参数) 列名作为参数项目中有很多个字段,当字段为空的时候,求该列的平均值并赋值给该字段。如: id
- 众所周知springboot项目,使用springboot插件打包的话,会打包成一个包含依赖的可执行jar,非常方便。只要有java运行环境
- package com.cjonline.foundation.cpe.action;import java.io.ByteArrayInp
- 1.前言string是属于引用类型的,这个大家都知道吧?但是平常在使用的过程中,发现它还是拥有一些值类型的特征的,这到底是为什么呢?原因就是
- 涉及知识点在本示例中,从数据绑定,到数据展示,涉及知识点如下所示:DataGrid,要WPF提供的进行二维数据展示在列表控件,默认功能非常简
- 场景:简单工厂时候,我设计了一个场景,有三种剑去打怪,这时候,需求变化了,我三种剑变成了,匕首、剑以及木棒,想要用工厂方法来实现,怎么弄?1
- 一、点睛邻接矩阵通常采用一个一维数组存储图中节点的信息,采用一个二维数组存储图中节点之间的邻接关系。邻接矩阵可以用来表示无向图、有向图和网。
- 概念:有enum关键字修饰的类,成为枚举类1、枚举规则枚举类的对象可以有类里面定义,不支持重新new出来,枚举类有构造函数,其他的类都一样,
- C# using 三种使用方式介绍1.using指令。using + 命名空间名字,这样可以在程序中直接用命令空间中的类型,而不必指定类型的
- 题目描述原题链接 :88. 合并两个有序数组给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2,另有两个整数 m
- 这里介绍一个简易的音乐播放器,供大家参考,具体内容如下效果图如下:但是,由于这是一个简易版的音乐播放器,所播放的音乐只有一首,且被写死,但,
- AsyncContextAsyncContext是Servlet 3.0使Servlet 线程不再需要一直阻塞,直到业务处理完毕才能再输出响
- OAuth 简介OAuth 是由 Blaine Cook、Chris Messina、Larry Halff 及 David Recordo
- 昨天晚上写代码的时候偶然发现 DateTime 里出现了星期几,当时一阵凌乱,去网上百度没有详细解决办法,很多人说可以用用 ToString
- 话不多说,请看代码:package com.lxj.demo;import java.io.BufferedReader;import ja
- 本文实例讲述了C#实现带百分比的进度条功能。分享给大家供大家参考,具体如下:功能需求:如果程序中会执行一个耗时的计算过程,我想在用户点击按钮
- 抽象类和抽象方法常用知识点:(1)抽象类作为被继承类,子类必须实现抽象类中的所有抽象方法,除非子类也为抽象类。也就是说,如果子类也为抽象类,