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 ...
随机推荐
- OpenCV 常用汇总
cv::Rect矩形类用法 typedef struct CvRect { int x; /* 方形的左上角的x-坐标 */ int y; /* 方形的左上角的y-坐标*/ int width; /* ...
- style标签进行实时编辑及修改css(转)
心得: style也是一个标签,那么也可以使用css对其进行编辑 html5新属性 contenteditable,可以让标签元素处于可编辑状态,对于style标签也适用 为了不影响head标签里的s ...
- PANDAS 数据合并与重塑(join/merge篇)
pandas中也常常用到的join 和merge方法 merge pandas的merge方法提供了一种类似于SQL的内存链接操作,官网文档提到它的性能会比其他开源语言的数据操作(例如R)要高效. 和 ...
- ASP.NET常见内置对象(一)
在web开发中,数据库都是通过HTTP协议来传输的.但HTTP是一个无状态协议,不会保留数据的状态和信息. 为了解决问题.各种开发语言都提供了状态管理功能. 状态管理是在同一页或不同页的多个请求发生时 ...
- Django项目实战 - 搜索功能(转)
首先,前端已实现搜索功能页面, 我们直接写后台逻辑: Q()可以实现 逻辑或的判断, name_ _ icontains 表示 name字段包含搜索的内容,i表示忽略大小写. from djang ...
- 如何利用jQuery检查浏览器是否是IE6-8
$.support.leadingWhitespace是IE特有的属性,用来检查浏览器是否是IE6-8
- iOS UITextView 输入内容实时更新cell的高度
iOS UITextView 输入内容实时更新cell的高度 2014-12-26 11:37 编辑: suiling 分类:iOS开发 来源:Vito Zhang'blog 11 4741 UIT ...
- python之MySQL学习——防止SQL注入(参数化处理)
import pymysql as ps # 打开数据库连接 db = ps.connect(host=', database='test', charset='utf8') # 创建一个游标对象 c ...
- php学习之有用的资源 总结
1.php之道,http://laravel-china.github.io/php-the-right-way/ 2.改变php变成效率 http://www.php100.com/html/duj ...
- 分布式计算 要不要把写日志独立成一个Server Remote Procedure Call Protocol
w https://en.wikipedia.org/wiki/Remote_procedure_call In distributed computing a remote procedure ca ...