C++STL中的String用法

#include<iostream>
#include<string>
void test()
{
	std::string str;
	std::string str1(10, 'a');          //初始化str1为10个a
	std::cout << str1 << std::endl;     
	str1.clear();                        //清空str1
	std::cout << str1 << std::endl;
	str.assign("Hello,World",5);         //初始化str为“Hello,World”的前5个字符
	std::cout << str << std::endl;
	str +="aa";                        //str=str+"aa"
	std::cout << str << std::endl;
	str.append("Love");                 //向str中添加Love
	std::cout << str << std::endl;
	str.clear();
	str.append("I Love You", 2, 7);         //添加“I Love You”中的第二个位置开始截取七个元素
	std::cout <<"str:" << str << std::endl;
	int i;
	i=str.find("o", 1);                    //从左(1位置)到右查找str中的“o”元素,找到返回该元素的位置,找不到则返回-1
	std::cout << i << std::endl;        
	i=str.rfind("o");                      //从右向左查找“o”的位置,找到返回该元素的位置,找不到则返回-1
	std::cout << i << std::endl;
	str.replace(2, 3, "nnn");          从str的第二个位置的元素开始,三个元素替换为“nnn”
	std::cout<<str<<std::endl;
	//string 中字符串的比较,(主要用于比较是否相等)比较ASCII码
	if (str.compare(str1) == 0)
		std::cout << "相等" << std::endl;
	else if (str.compare(str1) > 0)
		std::cout << "大于" << std::endl;
	else if (str.compare(str1) < 0)
		std::cout << "小于" << std::endl;
	std::cout << str[2] << std::endl;
	std::cout << str.at(2) << std::endl;                 //访问元素
	str[2] = '1';         
	std::cout << str[2] << std::endl;
	str.at(2) = '3';                              //修改str中的元素的值
	std::cout << str[2] << std::endl;
	str.insert(1, "我爱你");                     //从第一个位置开始插入“我爱你”,向中间插入,后边的顺延
	std::cout << str << std::endl;
	str.erase(1, 4);                           //从第一个位置开始,删除后边四个位置的元素(一个汉字占据两个位置)
	std::cout << str << std::endl;
	std::string str2;
	str2 = str.substr(4, 5);                   //从第四个位置开始,返回一共5个字符的字串
	std::cout << str2 << std::endl;

}
int main()
{
	test();
	return 0;
}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值