字符数组和字符串基本掌握
#include<iostream>
#include<string>
#include<cstdio>
#include<cstring>
using namespace std;
int main(){
/*字符数组掌握:strlen,strcat,strcpy,strstr,strcmp*/
char c[100]="ZIFUshuzu1",c1[100]="give me five";//字符数组
//gets(c);//读入一整行直到换行
//cin>>c;//当没有空格
//1.长度 strlen
int len_c=strlen(c);;
cout<<"长度:"<<len_c<<endl;
//2.赋值
strcpy(c,c1);//把c1赋值给c
cout<<"把c1赋值给c:"<<c<<endl;
//3.合并(连接)
strcat(c,c1);//c+c1(c1加到c后)
cout<<"c1加到c后:"<<c<<endl;
/*字符串掌握:size(),length()等*/
string s,s1;
s="ZIFUCHUAN1";
s1="good good study";
//1.读入一整行(直到换行),包括读入空格
// getline(cin,s);
//2.size() 求字符串的长度,等同于length()函数
s="12 34";
cout<<s.size()<<endl;
//3.s[下标i] 取字符串的某个字符 ,等同于at(下标i)
s="abcd";
cout<<s[0]<<s.at(2)<<endl;
/*
4.substr(开始位置i,子串长度len);
取字符串的子串。
当len超过原字符串的长度时,只取下剩下的。
提醒:i要在字符串长度内。
*/
s="abcdef";
cout<<s.substr(3,2)<<s.substr(3,20)<<endl;
/*
5.insert(插入位置i,插入字符串s);
在字符串第i个位置插入s
*/
s="abcdef";
s.insert(2,"+1234");
cout<<s<<endl;
/*
6.erase(开始位置i,删除菜单len);
输出字符串的第i个位置后的len个字符。
*/
s="abcdef";
s.erase(2,3);
cout<<s<<endl;
/*
7.replace(开始位置i,长度len,要换上的字符串ss);
用字符串ss替换字符串中i开始的长度是len的一段。
*/
s="abcdef";
s.replace(2,1,"123");
cout<<s<<endl;
/*
8.find(子串subs)
查找子串subs第1次出现的位置,没有找到返回string::npos
find还有一些更强大的形式,比如在某一段
*/
s="abcdef";
int i=s.find("cd");
cout<<i<<endl;
return 0;
}