熟悉训练之string基础操作

//string 专项练习
#include <iostream>
#include <cstdio>
#include <string>
using namespace std;

int main()
{
    string str="hala madrid";
    cout<<str<<endl;
    cout<<str.size()<<endl;      //字符串长度size()和length(),两者功能基本相同
    for(int i=0;i<str.size();++i){
        cout<<str[i]<<" ";      //像数组那样通过元素下标访问
    }
    cout<<str[6]<<endl;
    for(string::iterator it=str.begin();it!=str.end();++it){    //通过迭代器访问,迭代器类似指针
        cout<<*it<<" ";
    }
    puts("");
    str.insert(str.size()," mia san mia");      //在字符串长度下标处开始,插入新的字符串
    cout<<str<<endl;
    str.erase(0,12);      //从下标0处开始,删除12个
    cout<<str<<endl;
    str.insert(0,"champion ");      //在下标0处插入字符串
    cout<<str<<endl;
    str.erase(8);       //从下标8处(含8)开始全删除
    cout<<str<<endl;
    str.clear();      //字符串清空
    cout<<str<<endl;
    string str0="hala madrid";
    string str1="to be";
    string str2="not to be";
    string str3="that is a question";
    string str4=str1+",";      //"to be ,"
    str4=str4+str2+';';      //"to be , not to be; "
    str4+=str3;
    cout<<str4<<endl;
    string str5="abc";
    string str6="abd";
    string str7="bbc";
    if(str5<=str6) cout<<str5<<"<="<<str6<<endl;      //字符串的比较
    if(str5<=str7) cout<<str5<<"<="<<str7<<endl;
    int index=str0.find("madrid");      //在字符串中查找指定字符用find(),若找到返回起始对应下标,如找不到返回string::npos
    cout<<index<<endl;      //找到的话,返回的就是第一个找到的字符串的第一个字母的序号,没有找到就返回-1
    if(index!=string::npos) cout<<index<<" ";
    index=str0.find('b');
    if(index==string::npos) cout<<"404 Not Found"<<endl;
    string str8=str0.substr(3,5);      //substr()返回字符串的子串函数。从第3个开始往后数5个:3.4.5.6.7
    cout<<str8<<endl;
    return 0;
}
/*
hala madrid
11
h a l a   m a d r i d a
h a l a   m a d r i d
hala madrid mia san mia
mia san mia
champion mia san mia
champion

to be,not to be;that is a question
abc<=abd
abc<=bbc
5
5 404 Not Found
a mad

Process returned 0 (0x0)   execution time : 3.121 s
Press any key to continue.
*/


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值