C++学习:string的了解

1.string的介绍

#include<string>

对于字符串的操作

自动处理内存的分配和释放

2.string的声明与初始化

1.std::string str1;空的

2.string str2 ="afhsihsa"

3.string str3 = str2

4.string str3 = str2.substr(0,5)

.substr(位置,长度)

5.const char* charArray ="hello"

string str5(charArray);

6.string str6(5,'A');

string(个数,字符);------------"AAAAA"

3.基本操作
c++ 复制代码
#include<bits/stdc++.h>
using namespace std;
int main(void){
ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
char buf[100];
scanf("%s", buf);
string str(buf);
printf("%s",str.c_str);
}

在C++中使用c_std用于将string转换为C风格的字符串进行输出。

1.获取字符串长度

.length

2.拼接字符串

str1 = str+str0

3.字符串查找

.find(****)

4.字符串替换

.replace(字串的起始位置,子串的长度,"替换的内容")

5.提取子字符串

substr(起始位置,长度)

不要越界

6.字符串比较

str1.compare(str2)

string的遍历

c++ 复制代码
#include<cmath>
#include<bits/stdc++.h>
using namespace std;
int main(void) {
	string str1 = "hello";
	for (int i = 0; i < str1.length(); i++)
		cout << str1[i];
	cout << '\n';
	for (auto i : str1)	
	{
		cout << i;
		i = 'a';
		//不改变str1
	}
	cout << '\n';
	for (auto &i : str1)
	{
		cout << i;
		i = 'a';
		//改变str1
	}
	cout << '\n';
	cout << str1 << endl;
	return 0;
}
相关推荐
y = xⁿ5 分钟前
MySQL学习笔记:乐观锁VS悲观锁/八股总结
笔记·学习·mysql
点云侠8 分钟前
隧道中线提取的优化方法
c++·算法·最小二乘法
d111111111d20 分钟前
STM32-UART抽象层封装
笔记·stm32·单片机·嵌入式硬件·学习
汉克老师22 分钟前
GESP2023年6月认证C++三级( 第二部分判断题(1-10))
c++·数组·位运算·进制·gesp三级·gesp3级
minji...23 分钟前
Linux 线程同步与互斥(五) 日志,线程池
linux·运维·服务器·开发语言·c++·算法
6Hzlia35 分钟前
【Hot 100 刷题计划】 LeetCode 108. 将有序数组转换为二叉搜索树 | C++ 分治法详解
c++·算法·leetcode
兩尛39 分钟前
c++面试常问2
开发语言·c++·面试
华清远见IT开放实验室1 小时前
嵌入式系统化课程 学习内容与服务说明
linux·stm32·学习·嵌入式·全栈·虚拟仿真·测评中心
爱上好庆祝1 小时前
学习js的第2天
前端·css·学习·html·css3
Rust研习社1 小时前
添加依赖库时的 features 是什么?优雅实现编译期条件编译与模块化开发
开发语言·后端·rust