C++ string初始化、string赋值操作、string拼接操作

以下介绍了string的六种定义方式,还有很多,这个只是简单举例

cpp 复制代码
#include<iostream>

using namespace std;

int main() {
	
	//1 无参构造
	string s1;
	cout << s1 << endl;

	//2 初始化构造
	string s2 ({'h', 'h', 'l', 'l', 'o'});
	cout << s2 << endl;

	//3 字符串初始化
	string s3("xiaoxiao");
	cout << s3 << endl;
	
	//4 字符串的前n个字符
	string s4("xiaoxiaoxiao", 6);
	cout << s4 << endl;
	
	//5 拷贝构造
	string s5(s4);
	cout << s5 << endl;
	

	// a 个 b
	string s6(8, 'o');
	cout << s6 << endl;




    return 0;

}

以下是string的六种赋值操作,以下是代码

cpp 复制代码
#include<iostream>
using namespace std;

int main() {
	//1 字符串常量的赋值
	string s1;
	s1 = "xiaoxiao";
	cout << s1 << endl;

	//2 字符串变量的赋值
	string s2;
	s2 = s1;
	cout << s2 << endl;

	//3 字符常量赋值
	string s3;
	s3 = 'a';
	cout << s3 << endl;

	//4 assign 接口1
	string s4;
	s4.assign("xiaoxiao");
	cout << s4 << endl;

	//5 assign 接口2
	string s5;
	s5.assign("xiaoxiaoxiao", 8);
	cout << s5 << endl;

	//6 assign 接口3
	string s6;
	s6.assign(s5);
	cout << s6 << endl;

	//7 a个b
	string s7;
	s7.assign(8, '6');
	cout << s7 << endl;



}

string拼接操作,代码见下

cpp 复制代码
#include<iostream>

using namespace std;

int main() {
	// 1 + 运算符重载
	string s1 = "dada";
	string s2 = "xiao";

	s1 = s1 + s2;
	cout << s1 << endl;
	
	// 2 += 运算符重载
	string s3 = "dada";
	string s4 = "xiao";

	s4 += "daxiao";
	cout << s4 << endl;

	// 3 append
	string s5 = "abc";
	s5.append("def");
	s5.append("hijklmn", 4); // 取这个的前四个,进行对应字符串的拼接,这个4代表个数
	s5.append("opqrst", 2, 3);// 取从第二个开始,取三个进行拼接
    cout << s5 << endl;
	// 4 push_back
	string s6 = "abb";
	s6.push_back('6');
	cout << s6 << endl;




	return 0;
}
相关推荐
悠仁さん1 小时前
【C++】AVL 树
c++
wuminyu1 小时前
JVM规范学习总结:解释器与JIT编译器如何处理JVM字节码
java·linux·c语言·jvm·c++
小徐不徐说1 小时前
序列化与反序列化:把 C++ 对象可靠地保存下来
开发语言·数据库·c++·php
ZhengEnCi2 小时前
模型训练完整流程:从数据准备到模型上线的 10 个关键步骤(全文可跑)
后端·算法
ragnwang2 小时前
Notes: Python pybind11 import C++ module
开发语言·c++·python
Wang's Blog2 小时前
Java 项目实战: 交友项目 - 搜索附近的功能概述和分析
java·开发语言·交友
骑着蜗牛撵大象3272 小时前
大模型 Agent 的沙箱护栏:gVisor 隔离、出口白名单与审计闭环
java·开发语言·jvm·安全·agent沙箱·gvisor·microvm
Dxy12393102163 小时前
JS DES 加密详解
开发语言·javascript·arcgis
充值内卷3 小时前
我给桌面加了个鱼缸:C++ 写后端,WebView2 里养一座 Three.js 小岛
开发语言·javascript·c++
云和数据.ChenGuang3 小时前
深入解析 Python 的 dir():从用法到 CPython 源码实现
开发语言·人工智能·python·langchain