STL---string 基本的成员函数

news/2024/10/21 23:14:41/

STL---string 基本的成员函数

  • 1、STL---string 基本的成员函数介绍
  • 2、练习题

//  STL(标准模板库)
//  ascall码表(美):值(内存中的二进制数值)——文字字符 {存在一一映射关系}

1、STL—string 基本的成员函数介绍

string类的构造函数

#include <iostream>
#include <string>
#include <list>
using namespace std;void test_string1()
{//string类的构造函数string s1;//string s2("hello");string s2 = "hello"; // 构造+拷贝构造 ->优化成 直接构造cout<< s1 <<endl;cout<< s2 <<endl;string s3(s2);cout<< s3 <<endl;/*cin >> s1 >> s2;cout<< s1 <<endl;cout<< s2  <<endl;*/
}

string类的赋值运算符重载

void test_string2()
{string s1;string s2 = "hello world!!!";//赋值s1 = s2; //拷贝赋值//后面两种不常用s1 = "xxxxx";s1 = 'y';}

operator[] 遍历string

void test_string3()
{string s1("hello,world");cout<< s1[0] <<endl;   //s1[0] --> s1.operator[](0) --> char& operator[](size_t pos)  取到string的第pos个字符s1[0] = 'x';cout<< s1[0] <<endl;cout<< s1 <<endl;//要求遍历string,每个字符+1for (size_t i=0; i<s1.size(); ++i)  //这里的 s1.size() 返回的是字符串s1的长度{s1[i]++;}cout<< s1 <<endl;s1[15];
}int main()
{test_string3();return 0;
}

2、练习题

//T1、仅仅反转字母
// 给你一个字符串s,根据下述规则反转字符串:(1)所有非英文字母保留在原有位置  (2)所有英文字母(大写或小写)位置反转
// 返回反转后的 s 。class Solution
{
public:bool IsLetter(char ch){if ((ch >= 'a' && ch <= 'z')|| (ch >= 'A' && ch <= 'Z'))return true;elsereturn false;}string reverseOnlyLetters(string s){size_t begin = 0, end = s.size() - 1;while (begin < end){while (begin < end && !IsLetter(s[begin])) //begin<end ,防止字符串s都不是字母,一直 ++begin,造成越界。++begin;while (begin < end && !IsLetter(s[begin]))--end;//当begin 和 end 都是字母时,交换swap(s[begin], s[end]);++begin;--end;}return s;}};

http://www.ppmy.cn/news/1047092.html

相关文章

理解docker命令

基础命令 帮助命令 docker --help&#xff08;帮助命令&#xff09; 用于获取某个命令的帮助信息 #命令帮助 docker 命令 --help 小技巧 换行符 \ 使用命令换符&#xff0c;可以让繁杂命令变得有条理 #命令换行&#xff0c;使用换行符 \ docker ... \... \ 镜像命令 d…

二、Kafka快速入门

目录 2.1 安装部署1、【单机部署】2、【集群部署】 2.2 Kafka命令行操作1、查看topic相关命令参数2、查看当前kafka服务器中的所有Topic3、创建 first topic4、查看 first 主题的详情5、修改分区数&#xff08;注意&#xff1a;分区数只能增加&#xff0c;不能减少&#xff09;…

代码随想录训练营day20| 654.最大二叉树 617.合并二叉树 700.二叉搜索树中的搜索 98.验证二叉搜索树...

TOC 前言 代码随想录算法训练营day20 一、Leetcode 654.最大二叉树 1.题目 给定一个不重复的整数数组 nums 。 最大二叉树 可以用下面的算法从 nums 递归地构建: 创建一个根节点&#xff0c;其值为 nums 中的最大值。 递归地在最大值 左边 的 子数组前缀上 构建左子树。 递归地…

电商项目part04 微服务拆分

微服务架构拆分 微服务介绍 英文:https://martinfowler.com/articles/microservices.html 中文:http://blog.cuicc.com/blog/2015/07/22/microservices 微服务拆分时机 如下场景是否需要进行微服务拆分&#xff1f; 代码维护困难&#xff0c;几百人同时开发一个模块&…

vue的开发者工具下载『保姆级别』

1.先进官网 极简插件_Chrome扩展插件商店_优质crx应用下载 (zzzmh.cn) 2.搜索vue devtools&#xff0c;点击进去 3.下载插件 4.下载到文件下你自己的文件下&#xff1a;我的是下载到E盘下。 5.压缩到当前目录下 6.电脑进入拓展程序&#xff08;不同的浏览器操作不同&#xff…

Apache DolphinScheduler 支持使用 OceanBase 作为元数据库啦!

DolphinScheduler是一个开源的分布式任务调度系统&#xff0c;拥有分布式架构、多任务类型、可视化操作、分布式调度和高可用等特性&#xff0c;适用于大规模分布式任务调度的场景。目前DolphinScheduler支持的元数据库有Mysql、PostgreSQL、H2&#xff0c;如果在业务中需要更好…

【李沐】3.5、softmax回归的从0开始实现

注意&#xff1a; 把每个像素位置看作⼀个特征 # 导入PyTorch库 import torch # 从IPython库中导入display模块&#xff0c;用于在交互式环境中显示内容 from IPython import display # 从d2l.torch模块中导入torch作为d2l的别名&#xff0c;方便后续使用d2l库中的功能 from d…

剪枝基础与实战(3): 模型剪枝和稀疏化训练流程

Model Pruning 相关论文:Learning Efficient Convolutional Networks through Network Slimming (ICCV 2017) 考虑一个问题,深度学习模型里面的卷积层出来之后的特征有非常多,这里面会不会存在一些没有价值的特征及其相关的连接?又如何去判断一个特征及其连接是否有价值? …