#include <iostream> #include <string> #include <sstream> using namespace std; /*bool com(char c){ return (c-'0')%2; }*/ int main(){ //常量 npos 字符串终点 cout<<string::npos<<endl; string s="abc"; if(s.find('d')==string::npos){ cout<<"no 'd' in s"<<endl; } /* s.find(k)未找到返回 unsigned long long 的最大值 int a=s.find(k) 找到返回下标,没找到返回-1 */ //非成员函数 //+ 表示连接 string s1="abc",s2="def"; char cc='k'; s1=s1+s2; cout<<s1<<endl; s1=s1+cc; cout<<s1<<endl; //== != < > <= >= 关系运算符按同位ASCII值比较,也称按字典序比较 string s3="aaa",s4="b",s5="abcdefk"; cout<<(s3>s1)<<endl; cout<<(s4>=s3)<<endl; cout<<(s5==s1)<<endl; //删除 erase erase_if c++20可用 /*string s6="12345678901234567890"; erase(s6,'3'); cout<<s6<<endl; erase_if(s6,com); cout<<s6<<endl;*/ //输入输出 string ss; cin>>ss;//输入的字符串不能有空格 cout<<ss<<endl; getline(cin,ss);//可以有空格 //数值转换 //有符号整数转换:string to [int][long][long long] string si="1234",sl="234.65",sll="-346 abc"; int a=stoi(si); int b=stol(sl); int c=stoll(sll); //string sii="abc 123"; int d=stoi(sii); 报错 cout<<a<<" "<<b<<" "<<c<<endl; //无符号整数转换:string to [unsigned long][unsigned long long] //stoul stoull //浮点数转换:string to [float][double][long double] //stof stod stold //将整数或浮点数类型转换成字符串 to_string to_wstring string nums=to_string(123); //定义含有空字符的字符串 ""s string s0="34645\0 234\n 7\t9"; string s0s="34645\0 234\n 7\t9"s; cout<<s0.size()<<" "<<s0<<endl; cout<<s0s.size()<<" "<<s0s<<endl; //字符串流 导入工具包:<sstream> string sss="my name is string"; istringstream iss(sss); string str; while(iss>>str) cout<<str<<endl; return 0; } (责任编辑:admin) |