欢迎使用本站,预祝练习时长两年半的选手们到成功! [本模块信息来自tem/def/head]

string 相关函数

时间:2024-05-12 17:52 作者:admin 点击:
#include iostream #include string using namespace std; int main(){ string s="abcdefghijk"; //capacity 当前对象分配的内存空间 couts.capacity()endl; s="abcde"; //size/length 返回字符数 couts.size()" "s.length()endl; //max_size

#include <iostream>

#include <string>

using namespace std;

int main(){

string s="abcdefghijk";

//capacity 当前对象分配的内存空间

cout<<s.capacity()<<endl;

s="abcde";

//size/length 返回字符数

cout<<s.size()<<" "<<s.length()<<endl;

//max_size 返回字符数最大值

cout<<s.max_size()<<" "<<s.capacity()<<endl;

//clear 清除内容

s.clear();

cout<<s.size()<<" "<<s.capacity()<<endl;

//empty 判断是否为空

cout<<s.empty()<<endl;

s="0123456789";

//insert 插入字符(通过地址或下标)

s.insert(1,3,'a');

cout<<s<<endl;

s.insert(2,"bc");

cout<<s<<endl;

s.insert(8,"i_love_c++",2,4);

cout<<s<<endl;

s.insert(s.begin()+5,'$');

cout<<s<<endl;

s.insert(s.begin()+6,3,'&');

cout<<s<<endl;

//erase 删除字符(通过地址或下标)

s.erase(8,2);

cout<<s<<endl;

s.erase(find(s.begin(),s.end(),'a'));

cout<<s<<endl;

s.erase(s.find('6'));

cout<<s<<endl;

//push_back 附加字符到结尾

s.push_back('+');

//append 附加字符串到结尾

s.append(3,'*');

s.append("/////");

s.append("0123456",3,2);

//operator+= 附加字符或字符串到结尾

s+='9';

s+="8888";

cout<<s<<endl;

//pop_back 移除末尾字符

s.pop_back();

cout<<s<<endl;

//compare 比较两个字符串 返回:正 负 零

string s1="abcdefgh",s2="abcdefgg";

cout<<s1.compare(s2)<<endl;

//starts_with 是否以xx开头

//s="unsigned";

//cout<<s.starts_with("un")<<endl;

//ends_with 是否以xx结尾

//replace 替换

s="i_love_c++";

s.replace(2,4,"like");

cout<<s<<endl;

s.replace(s.begin(),s.begin()+3,5,'I');

cout<<s<<endl;

//substr 字符串截取

s="0123456789";

cout<<s.substr(2,5)<<endl;

cout<<s.substr(4)<<endl;

//copy 复制

char c[200];

s.copy(c,5);

cout<<c<<endl;

//resize 重置大小

cout<<s<<endl;

s.resize(2);

cout<<s<<endl;

s.resize(20,'a');

cout<<s<<endl;

//swap 交换

s1="abc",s2="1234";

s1.swap(s2);

cout<<s1<<" "<<s2<<endl;

//find 查找

s="abcdefghiabcdefghi";

cout<<s.find("cde")<<endl;

cout<<s.find("cde",5)<<endl;

cout<<s.find('f')<<endl;

//rfind 反向查找

cout<<s.rfind("cde")<<endl;

cout<<s.rfind("cde",5)<<endl;

cout<<s.rfind('f')<<endl;

//find_first_of 首次出现位置

//find_first_not_of 首次缺失位置

//find_last_of 最后一次出现位置

//find_last_not_of 最后一次缺失位置

return 0;

}

(责任编辑:admin)
    顶一下
    (0)
    0%
    踩一下
    (0)
    0%