C++ 中的”字符串“——string 类相关 *** 作

C++ 中的”字符串“——string 类相关 *** 作,第1张

string类

 C++对于C语言具有良好的兼容,C语言语法格式的字符串仍可以在C++程序中使用,C++本身则提供了string类实现相关的 *** 作。同时,在头文件string中,也提供了将两种语法格式的“字符串”相互转换的函数。

C语言 和 C++ 字符串格式的转换
//C语言和C++之间的相互转换
	//C语言转换为C++
	const char* s_c = "string_c.";
	string s_cplus(s_c);//将C语言的字符串转换为string类
	
	string s_cplus_2 = "string_cpuls";
	const char* s_c_2 = s_cplus_2.c_str();//将string类转换为C语言字符串
输入输出
	//输入字符串
	cin>>s;
	//输出字符串
	cout<<s<<endl;
获取字符串的长度
	len=s.length();
不同字符串的拼接

 C++的string类相较于C语言字符串提供了更加便捷的方式,即直接使用“+”运算符实现两个字符串的拼接,且string类的拼接,不用担心数据溢出而事先预设存储空间。

	//两个string的拼接
	string S4 = S1 + S2;
字符串的删减
	//字符串的增删
	//在指定位置插入字符串
	S1.insert(4, "_insert_");//在指定位置为4的地方插入指定内容

	//删除指定位置的字符串
	S1.erase(5);//删除下标5之后的所有元素
	S2.erase(5, 5);//删除下标5之后的5个元素
提取子字符串
//提取子字符串
	S1 = S2.substr(4, 5);//起始下标为4,提取字串长度为5
查找子串
//查找子串
	int index = S1.find(S2, 0);//从下标0开始,查找S1中S2所在位置

除find()函数外,rfind()函数也作为字串查找函数,不同之处在于,第二个参数为结束的下标位。
而find_first_of()返回的子串返回的第一个位置。

其他

 string类中封装了大量的字符串 *** 作函数,除上述提到的内容外,还包括,交换两个字符串swap(), 替换字符replace(), 返回字符数量size(), length, 判断字符串是否为空empty(), 单一字符读取at(), 比较函数compare(), 可存放的最大字符数max_size()等等,可以根据实际情况加以选择。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1330321.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-12
下一篇 2022-06-12

发表评论

登录后才能评论

评论列表(0条)

保存