string查找替换、分割字符串、比较、截取、类型转换、排序等功能都提供了强大的处理函数,可以代替字符数组来使用。

熟练掌握好string的各种使用方法,能极大的提高编程效率哦 ^_^。

 #include<iostream>
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<string>
#include<cmath>
#include<algorithm>
#include<vector>
#include<queue>
#include<fstream>
using namespace std;
int main(){ //string 的初始化
string str0,str00;
cin>>str0; cout<<str0<<endl;//cin读入忽略空字符,遇见空格自动停止
getline(cin,str00); cout<<str00<<endl;//不忽略空格,但舍弃换行符
string str1="hello word";
string str2=("my heart go on");
string str3 (str1,);//str3表示str1从第五个开始的之后的所有字符(不包含第 5个字符)
string str4 (str1,,);//str3表示str1从第五个开始的之后的3个字符(不包含第 5个字符)
char s[]={"bits/stdc++.h"};
string str5=s;
string str6 (s);
string str7 (s,);//==bits 和str3不一样
string str8 (,'a');
cout<<str1<<endl<<str2<<endl<<str3<<endl<<str4<<endl;
cout<<s<<endl<<str5<<endl<<str6<<endl<<str7<<endl<<str8<<endl; //赋值,拼接字符串
string str9="C18H20FN3O4";
string str10="你好";
string str11=str9+str10;//直接做加法拼接
cout<<str11<<endl;
cout<<str10+str9<<endl; str9.push_back('.');//加入单字符,不能加入字符串
cout<<str9<<endl; str9.append("you can see C18H20FN3O4.");//加入字符串
cout<<str9<<endl; str9.assign("dreams come true");//重新赋值
cout<<str9<<endl; str9.insert(,"!!!!!");//在指定位置插入字符串,是插入,不是覆盖
cout<<str9<<endl; //string 的访问
string str12="C++isdifficult";
cout<<str12[]<<" "<<str12[]<<" "<<str12.at()<<endl;//下标从0开始 //可以使用 STL 的接口
string str13;
str13="GFBACED";
string::iterator itstr=str13.begin();
for( ;itstr!=str13.end();itstr++){//遍历
cout<<*itstr;
}
cout<<endl;
sort(str13.begin(),str13.end());//可以快排
cout<<str13<<endl; /*
比较操作 == != > >= < <= compare 等string的比较操作,按字符在字
典中的顺序进行逐一比较。在字典前面的字符小于后面的字符。
*/
string str14="ABCDEF";
string str15="ABCD";
string str16="BA";
if(str14<str15) cout<<"str14<str15";
else cout<<"str15<str14"<<endl;
if(str14<str16) cout<<"str14<str16";
else cout<<"str16<str14"<<endl; //string 可以直接排序
string str17[];
for(int i=;i<=;i++) cin>>str17[i];
sort(str17+,str17++);
for(int i=;i<=;i++) cout<<str17[i]<<endl; //字符查找
string str18="i am a student,and i am 16 years old";
string::size_type pos;
pos=str18.find("am");
if(pos!=str18.npos)
cout<<"第一次出现的下标是:"<<pos<<endl;//下标从 0开始
pos=str18.find("am",);
cout<<"在下标10之后第一次出现的下标是"<<pos<<endl; string str19="i";
pos=str18.rfind(str19);//反向查找
cout<<"反向中第一次出现的位置"<<pos<<endl; //字符交换
string str19="www.baidu.com";
string str20="www.google.com";
str19.swap(str20);//交换
cout<<str19<<" "<<str20<<endl;
str19.erase();//删除整个字符串
str20.clear();//清空字符容器中所有内容
cout<<str19<<" "<<str20<<endl; return ;
}

C++ string 用法总结的更多相关文章

  1. c++ std::string 用法

    std::string用法总结 在平常工作中经常用到了string类,本人记忆了不好用到了的时候经常要去查询.在网上摘抄一下总结一下,为以后的查询方便: string类的构造函数: string(co ...

  2. String... 用法

    今天看到一个没见过的函数参数列表test(int... a),查看资料,原来是如下用法:类型后面三个点(String...),是从Java 5开始,Java语言对方法参数支持一种新写法,叫可变长度参数 ...

  3. C++ string 用法详解

    /////////////////////////////////////////////////////////////////////////////////// 任何人对本文进行引用都要标明作者 ...

  4. std::string 用法总结

    标准C++中的string类的用法总结 相信使用过MFC编程的朋友对CString这个类的印象应该非常深刻吧?的确,MFC中的CString类使用起来真的非常的方便好用.但是如果离开了MFC框架,还有 ...

  5. std::string 用法

    string类的构造函数:string(const char *s); //用c字符串s初始化string(int n,char c); //用n个字符c初始化 string类的字符操作:const ...

  6. LIS的string用法

    题目链接 使用的是string里的find函数 stl大法好 #include<iostream> #include<cstdio> #include<cstring&g ...

  7. python的string用法

    s.strip().lstrip().rstrip(',') S.lower() #小写 S.upper() #大写 S.swapcase() #大小写互换 S.capitalize() #首字母大写 ...

  8. string用法

    截取字符串 string strTributeInfo = "1#2#3#4#5#6#7"; vector<string> vecTribute; StringUtil ...

  9. c++ string用法

    首先,为了在我们的程序中使用string类型,我们必须包含头文件 .如下: #include  //注意这里不是string.h string.h是C字符串头文件 1.声明一个C++字符串 声明一个字 ...

  10. iOS开发宝典:String用法大全

    一.NSString 创建字符串.  NSString *astring = @"This is a String!"; 创建空字符串,给予赋值.  NSString *astri ...

随机推荐

  1. servlet各版本区别以及dynamic web module 版本之间的区别

    java的web系统有多种类型,比如静态的和动态的,然后动态的java web project要设置dynamic web module,也就是动态网页模型,他必须要喝对应的服务器搭配好了才能跑,今天 ...

  2. http协议详解(2)

    HTTP报文是面向文本的,报文中的每一个字段都是一些ASCII码串,各个字段的长度是不确定的.HTTP有两类报文:请求报文和响应报文. HTTP请求报文 一个HTTP请求报文由请求行(request ...

  3. Dubbo基础篇-zookeeper安装(单点)

    安装步骤: 一首先安装jdk环境 二 安装zookeeper   在centos虚拟机192.168.23.131中安装zookeeper: 1 修改操作系统/etc/hosts 文件中的配置: # ...

  4. Java Tomcat7性能监控与优化详解

    1.   目的 通过优化tomcat提高网站的并发能力. 2.   服务器资源 服务器所能提供CPU.内存.硬盘的性能对处理能力有决定性影响. 3.   优化配置 3.1. 配置tomcat管理员账户 ...

  5. [Go语言]从Docker源码学习Go——function和method

    function和method关系 method是针对某一类型定义的function, function可以单独调用,method必须针对某一类型的实例进行调用 //function 调用方式 pac ...

  6. 【BZOJ4382】[POI2015]Podział naszyjnika 堆+并查集+树状数组

    [BZOJ4382][POI2015]Podział naszyjnika Description 长度为n的一串项链,每颗珠子是k种颜色之一. 第i颗与第i-1,i+1颗珠子相邻,第n颗与第1颗也相 ...

  7. 【BZOJ3829】[Poi2014]FarmCraft 树形DP(贪心)

    [BZOJ3829][Poi2014]FarmCraft Description In a village called Byteville, there are   houses connected ...

  8. 【IE兼容性】代码中多语言样式+IE不兼容解决

    一.代码中样式根据不同语言对IE做不兼容解决 二.代码逻辑: 1. 后台返回语言信息: result.addObject("language",getLocaleStr());   ...

  9. 网络模型+三次握手+四次挥手+DNS+HTTPS

    网络模型+三次握手+四次挥手+DNS+HTTPS 这篇文章十分精华,所以整理一下: 一.网络模型 OSI七层模型,和TCP/IP五层模型(更为普遍) TCP/IP 协议集: 二.TCP协议(传输层)建 ...

  10. Oracle 的安全保障 commit &checkpoint

    Oracle 的安全 commit &checkpoint commit ---lgwr 事务相关的操作,保证事务的安全. commit标志着事务的结束.意味着别人对你事务操作的结果可见. c ...