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. python学习之路----输出所有大小写字母

    print([chr(i) for i in range(48, 58)]) # 所有数字print([chr(i) for i in range(65, 91)]) # 所有大写字母print([c ...

  2. Volley 源码分析

    Volley 源码分析 图片分析 要说源码分析,我们得先看一下官方的配图: 从这张图中我们可以了解到 volley 工作流程: 1.请求加入优先队列 2.从缓存调度器中查看是否存在该请求,如果有(没有 ...

  3. [转]廖雪峰Git教程总结

  4. duboo服务调用不到的原因(dubbo启动消费者报错:No provider available for the service)

    com.alibaba.dubbo.rpc.RpcException: Failed to invoke the method queryTemplate in the service com.x.a ...

  5. 前端模板<script type="text/template" id="tmpl">

    前端模板, 比连接字符串好用多了, 还可以使用循环\判断等语句, 减少工作量 <script type="text/template" id="member-tmp ...

  6. Less-loops循环

    loop循环 example: .test(@i) when (@i > 0) { .test((@i - 1)); .study@{i} { width: (10px * @i); } } d ...

  7. 更新设置api

    8.8 更新设置 API Elasticsearch允许在elasticsearch.yml文件中指定各种参数来调优.但你应该把这个文件当做 默认设置,可以在运行时通过Elasticsearch RE ...

  8. Powered by Flink

    Apache Flink: Powered by Flink https://flink.apache.org/poweredby.html Powered by Flink Apache Flink ...

  9. PHP 防止恶意用户快速刷新页面

    <?php /** * 防止快速刷新 * */ session_start(); header("Content-type:text/html;charset=utf-8") ...

  10. SQL SERVER常见等待——解决会话等待产生的系统问题

    SQL SERVER——解决会话等待产生的系统问题 转自: https://blog.csdn.net/z_cloud_for_SQL/article/details/55051215 版权声明:SQ ...