zoukankan      html  css  js  c++  java
  • [C++]-string类的常用操作

    代码

    #include<iostream>
    #include<string>
    #include<algorithm>
    using namespace std;
    
    int main()
    {
    	/* ----获取字符串---- */ 
    	string s1;
    	getline(cin, s1); // getline函数获取一行字符,遇到回车结束 
    	cout<<s1<<endl; 
    	cout<<endl; 
    
    	string s2;
    	cin>>s2; // cin获取一个单词,遇到空格就会结束
    	cout<<s2<<endl;
    	cout<<endl;
    	
    	/* ---- +=操作符---- */ 
    	string s3 = "hello";
    	s3 += " word"; // +=可以拼接字符串 
    	cout<<s3<<endl;
    	cout<<endl; 
    	
    	/* ----sort排序---- */ 
    	string s4 = "cbdeafghi";
    	sort(s4.begin(), s4.end()); // sort可以对string中的字符排序 
    	cout<<s4<<endl;
    	cout<<endl; 
    	
    	/* ----插入删除---- */ 
    	string s5 = "12345";
    	s5.insert(s5.begin()+2, '0'); // 在第2个索引位置插入字符0,原本该位置及之后的字符后移 
    	cout<<s5<<endl; 
    	s5.erase(s5.begin()+2); // 删除索引2位置的字符 
    	cout<<s5<<endl;  
    	cout<<endl; 
    	
    	/* ----字符串切片---- */ 
    	string s6 = "0123456789", s; 
    	s = s6.substr(5, 4); // 从索引5开始(包括第5个)获取连续的4个字符 
    	cout<<s<<endl;
    	s = s6.substr(5, -1); // 直接从第5个索引位置起截取所有字符 
    	cout<<s<<endl;
    	s = s6.substr(5, 20); // 当第二个参数超出索引值,也只取到最后就结束 
    	cout<<s<<endl;
    	cout<<endl; 
    	
    	/* ----遍历方式---- */ 
    	string s7 = "1234567";
    	for(int i=0; i<s7.length(); i++) // 普通的for循环 
    		cout<<s7[i]<<" ";
    	cout<<endl; 
    	for(string::iterator it=s7.begin(); it!=s7.end(); ++it)// 使用迭代器
    		cout<<*it<<" ";
    	cout<<endl;
    }
    

    运行结果

  • 相关阅读:
    BZOJ2938 POI2000病毒
    HDU2222 AC自动机模板
    BZOJ1029 [JSOI2007]建筑抢修
    BZOJ1027 [JSOI2007]合金
    BZOJ1025 [SCOI2009]游戏
    BZOJ1257 [CQOI2007]余数之和sum
    BZOJ1021 SHOI2008循环的债务
    BZOJ1030 [JSOI2007]文本生成器(AC自动机)
    POJ2728 Desert King
    POJ2976 Dropping tests
  • 原文地址:https://www.cnblogs.com/xxmmqg/p/13405164.html
Copyright © 2011-2022 走看看