c++模板库字符串的基本读取处理

//c++中字符串的处理获取一行函数
#include <iostream>
using namespace std;
int main()
{
    string s;
    getline(cin,s);
    cout<<s<<endl;
}
//c++中对于操作符重载的一些现象
#include <iostream>
using namespace std;
int main()
{
    string s1,s2;
    int a=5;
    s1+="hello";//根据c++的重载,会将hello加入到字符串中
    s1+=" world!" ;//与上面的规则相同
    s1+='b';//可以加入单独的字符,不一定为字符串 
    s1+=98;//如果加数字的话将会对应的看作为ascii码,从而转换为对应的字符 
    cout<<s1<<endl;
    s2+=(a+'0');//想把常量a所代表的数字加到字符串中
    cout<<s2<<endl; 
    return 0;
}
//c++中字符串的排序 
#include <iostream>
#include<algorithm>
using namespace std;
int main()
{
    string s="adefcbg";
    cout<<*s.begin()<<endl;//输出字符串的第一个字母
    cout<<*--s.end()<<endl;//s.end()代表了字符串的末尾‘/0',因此需要前移一位才能读到‘g’
    sort(s.begin(),s.end());//定位好开始和结束的位置之后即可以实现排序 
    cout<<s<<endl;
    return 0;
}

 

//c++中字符串的删除 
#include <iostream>
using namespace std;
int main()
{
    string s="adefcbg";
    s.erase(s.begin());//调用erase删除字符串的第一个字符
    s.erase(--s.end());//调用erase删除字符串的最后一个字符 
    cout<<s<<endl;
    return 0;
}

 

//c++中取出字符串中特定的某一部分 substr函数 
#include <iostream>
using namespace std;
int main()
{
    string s="adefcbg";
    string a,b,c;
    a=s.substr(1,3);//从第二个字符开始取,取到第四个字符
    b=s.substr(1,100);//取到最后就终止了 
    c=s.substr(3,-1);//从第四个字符一直取到了最后 
    cout<<a<<endl;
    cout<<b<<endl;
    cout<<c<<endl;
    return 0;
}

 

//c++中对于循环的四种简单形式 
#include <iostream>
using namespace std;
int main()
{
    string s="adefcbg";
    for(int i=0;i<s.length();i++)//利用c++中存在的length函数直接读取到字符串的长度 
    cout<<s[i];
    cout<<endl;
    for(string::iterator it=s.begin();it!=s.end() ;it++)
    cout<<*it;//利用迭代器
    cout<<endl;
    for(auto it=s.begin();it!=s.end() ;it++)//使用迭代器简单形式实现for循环,注意auto可代用相应的迭代器类型 
    cout<<*it;
    cout<<endl;
    for(auto x:s)cout<<x;//利用c++11新特性实现for循环  
    return 0;
}

 

 


 

posted @ 2020-01-29 16:26  zmachine  阅读(533)  评论(0编辑  收藏  举报