C++ string 用法总结
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 用法总结的更多相关文章
- c++ std::string 用法
std::string用法总结 在平常工作中经常用到了string类,本人记忆了不好用到了的时候经常要去查询.在网上摘抄一下总结一下,为以后的查询方便: string类的构造函数: string(co ...
- String... 用法
今天看到一个没见过的函数参数列表test(int... a),查看资料,原来是如下用法:类型后面三个点(String...),是从Java 5开始,Java语言对方法参数支持一种新写法,叫可变长度参数 ...
- C++ string 用法详解
/////////////////////////////////////////////////////////////////////////////////// 任何人对本文进行引用都要标明作者 ...
- std::string 用法总结
标准C++中的string类的用法总结 相信使用过MFC编程的朋友对CString这个类的印象应该非常深刻吧?的确,MFC中的CString类使用起来真的非常的方便好用.但是如果离开了MFC框架,还有 ...
- std::string 用法
string类的构造函数:string(const char *s); //用c字符串s初始化string(int n,char c); //用n个字符c初始化 string类的字符操作:const ...
- LIS的string用法
题目链接 使用的是string里的find函数 stl大法好 #include<iostream> #include<cstdio> #include<cstring&g ...
- python的string用法
s.strip().lstrip().rstrip(',') S.lower() #小写 S.upper() #大写 S.swapcase() #大小写互换 S.capitalize() #首字母大写 ...
- string用法
截取字符串 string strTributeInfo = "1#2#3#4#5#6#7"; vector<string> vecTribute; StringUtil ...
- c++ string用法
首先,为了在我们的程序中使用string类型,我们必须包含头文件 .如下: #include //注意这里不是string.h string.h是C字符串头文件 1.声明一个C++字符串 声明一个字 ...
- iOS开发宝典:String用法大全
一.NSString 创建字符串. NSString *astring = @"This is a String!"; 创建空字符串,给予赋值. NSString *astri ...
随机推荐
- servlet各版本区别以及dynamic web module 版本之间的区别
java的web系统有多种类型,比如静态的和动态的,然后动态的java web project要设置dynamic web module,也就是动态网页模型,他必须要喝对应的服务器搭配好了才能跑,今天 ...
- http协议详解(2)
HTTP报文是面向文本的,报文中的每一个字段都是一些ASCII码串,各个字段的长度是不确定的.HTTP有两类报文:请求报文和响应报文. HTTP请求报文 一个HTTP请求报文由请求行(request ...
- Dubbo基础篇-zookeeper安装(单点)
安装步骤: 一首先安装jdk环境 二 安装zookeeper 在centos虚拟机192.168.23.131中安装zookeeper: 1 修改操作系统/etc/hosts 文件中的配置: # ...
- Java Tomcat7性能监控与优化详解
1. 目的 通过优化tomcat提高网站的并发能力. 2. 服务器资源 服务器所能提供CPU.内存.硬盘的性能对处理能力有决定性影响. 3. 优化配置 3.1. 配置tomcat管理员账户 ...
- [Go语言]从Docker源码学习Go——function和method
function和method关系 method是针对某一类型定义的function, function可以单独调用,method必须针对某一类型的实例进行调用 //function 调用方式 pac ...
- 【BZOJ4382】[POI2015]Podział naszyjnika 堆+并查集+树状数组
[BZOJ4382][POI2015]Podział naszyjnika Description 长度为n的一串项链,每颗珠子是k种颜色之一. 第i颗与第i-1,i+1颗珠子相邻,第n颗与第1颗也相 ...
- 【BZOJ3829】[Poi2014]FarmCraft 树形DP(贪心)
[BZOJ3829][Poi2014]FarmCraft Description In a village called Byteville, there are houses connected ...
- 【IE兼容性】代码中多语言样式+IE不兼容解决
一.代码中样式根据不同语言对IE做不兼容解决 二.代码逻辑: 1. 后台返回语言信息: result.addObject("language",getLocaleStr()); ...
- 网络模型+三次握手+四次挥手+DNS+HTTPS
网络模型+三次握手+四次挥手+DNS+HTTPS 这篇文章十分精华,所以整理一下: 一.网络模型 OSI七层模型,和TCP/IP五层模型(更为普遍) TCP/IP 协议集: 二.TCP协议(传输层)建 ...
- Oracle 的安全保障 commit &checkpoint
Oracle 的安全 commit &checkpoint commit ---lgwr 事务相关的操作,保证事务的安全. commit标志着事务的结束.意味着别人对你事务操作的结果可见. c ...