string的应用(适用初学者)

实话实说,此处我写的看起来可能不怎么明确,因为我不想在进行细分和介绍了,直接把这些代码全部都给出了,当然string还有更多的用法 ,此处的不太全面。

#include<iostream>
#include<string>
using namespace std;

int main()
{
    string s1;
    cout<<s1<<endl;//直接输出为空
    string s2(3,'w');
    cout<<s2<<endl;//赋值为3个w
    string s3("asdfgh");
    cout<<s3<<endl;   //赋值s3为括号内的内容
    string s4("asdfgh",4);
    cout<<s4<<endl;//赋值s4为字符串的前四个
    string s5("asdfgh",2,5);//赋值s5为字符串的下标2到5
    cout<<s5<<endl;
    string s6(s5);//复制
    cout<<s6<<endl;
    cout<<s1.empty()<<endl;
    cout<<s2.empty()<<endl;//empty判断是否为空  为空则为1 不为空为2
    cout<<s2.capacity()<<endl;//计算系统分配的容量大小
    cout<<s3.length()<<endl;//
cout<<s3.size()<<endl;//计算所用空间,
    //但是size与length并不一样
    s2.resize(2);//修改容量大小
    cout<<s2<<endl;
    s3[1]='m';
    s3.at(2)='n';//修改制定下标
    cout<<s3<<endl;
    s2.insert(2,s3);//在下标2的前面插入s3
    cout<<s2<<endl;
s2.insert(2,"asdfgh",2,5);//在下标为2的前面插入字符串的2
    //到5的部分
    cout<<s2<<endl;
    s2.insert(2,3,'e');//在下标为2的前面插入三个e
    cout<<s2<<endl;
    s2+="qqqqqq";//在s2后面插入‘‘qqqqqq’‘
    cout<<s2<<endl;
    s4+=s5;//在s4后面插入s5
    cout<<s4<<endl;
    s4.append("asa");//在s4后面插入asa
    cout<<s4<<endl;
    string s7;
    s7="zxcv";
    string s8;
    s8=s7;//使s7的内容复制给s8
    cout<<s7<<endl<<s8<<endl;
    s7.assign("qwer");//赋值
    cout<<s7<<endl;
    s7.erase(1,2);//从下标1为开始删除1后面的两个字符
    cout<<s7<<endl;
    s7.swap(s8);//转换二者内容
    cout<<s7<<endl<<s8<<endl;
    cout<<(s7>s3)<<endl;//为真则为0 假就是1
    string s10="abzx",s11="ag";
cout<<s10.compare(s11)<<endl;//结果为正数s10大,为0相等,
    //否则s11大
cout<<s10.compare(2,3,s11)<<endl;//表示s10的下标
    //为2到3的地方与s11进行比较
    cout<<s10.compare(1,3,s11,2,3)<<endl;
    //表示s10下标1到3的部分与s11下标2到3的部分进行比较
    char s14[10];
s5.copy(s14,1,2);//将s5复制进字符数组s14中
    //,1为复制的字符数,2是开始复制的位置
    cout<<s14<<endl;
    string s100="asdfasdqwe",s101="dfa";
    cout<<(int)s100.find(s101,1)<<endl;
//在s100中查找s101,从下标1的位置开始,z找到返回位置,找不到
    //返回-1
    cout<<(int)s100.find("dfl")<<endl;
    //在s100中查找字符串’‘dfl''
    
    
    
    return 0;
}

下面都是运行结果,自己可以尝试都过一遍,加深印象。
在这里插入图片描述

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值