string库
1、size()与length()
字符串长,结果相同
string s;
s.length(); //s.length()-1是最后一个字符的下标,而不是' '
for(i=0;i<s.length()-1;i++) cout<<s[i]<<endl; //可以输出每个字符
s.size();
2、find(char ch)
用于string类型
在字符串中找字符ch,没找到返回-1,找到则返回下标;也可以查找一个子串,返回子串(首字符)的下标
string s; if(s.find('a')==-1) return false;
没在s中找到字符'a'的话,返回false。
从指定位置处查找
string s; cin>>s; if(s.find('a',5)!=-1)//从下标为5处(包含s[5])开始查找 return true;
如果s中有多个相同字符,而要分别输出它们的位置
string s; cin>>s; int pos=0;//记录位置 while((pos=s.find('a',pos))!=-1) cout<<"position"<<pos++<<";";//每次要从上一个位置之后开始查找,不然就会一直输出之前的位置,所以pos++表明从之后开始查找
参考:https://www.cnblogs.com/wkfvawl/p/9429128.html
3、统计字符串长度
strlen(ch):不包含末尾的0;
另外也可用递归的方式不用strlen统计字符串长度
//用递归求字符串长度,字符串都以' '结尾 int strlen1(char * ch){ if(*ch!='