c++中提供string字符串基本数据类型
c中使用数组可输入输出字符,但具体函数操作可能比较麻烦,c++中提供方便快捷的字符串的处理方法函数;
#include<stdio.h>
#include<iostream>
#include<string>
using namespace std;
int main(){
string str="hello";
int n;
n=str.size();
int m=str.length();
for(int i=0;i<n;i++){
printf("%c",str[i]);
}
printf("\n");
printf("%d %d\n",n,m);
//迭代器 类似于指针 输出字符串
for(string::iterator it=str.begin();it!=str.end();++it){
printf("%c",*it);
}
printf("\n");
//string中常用的元素,在任意位置插入元素insert(),在任意位置删除元素erase(),将字符串清空clear()
str.insert(str.size()," end world");
//插入
n=str.size();
for(int i=0;i<n;i++){
printf("%c",str[i]);
}
printf("\n");
//删除
str.erase(0,12);
n=str.size();
for(int i=0;i<n;i++){
printf("%c",str[i]);
}
printf("\n");
//插入
str.insert(0,"how to");
n=str.size();
for(int i=0;i<n;i++){
printf("%c",str[i]);
}
printf("\n");
//删除
str.erase(7);
n=str.size();
for(int i=0;i<n;i++){
printf("%c",str[i]);
}
printf("\n");
//清空
str.clear();
n=str.size();
for(int i=0;i<n;i++){
printf("%c",str[i]);
}
printf("\n");
//string的运算符
string str1="aaa";
string str2="nnnnnn";
string str3="llllllllll";
string str4=str1+",";
string str5=str2+";";
string str6=str4+str5+str3;
cout<<str6;
printf("\n");
//string常用函数
//在字符串中寻找特定字符或字符串的函数是find()
string dddd="hello world";
int found=dddd.find("lo");
if(found!=string::npos){
printf("'lo' found at:%d\n",found);
}
found=dddd.find('.');
if(found==string::npos){
printf("'.' not founded");
}
printf("\n");
//返回字符串的子串的函数是substr()
string xstr=dddd.substr(0,4);
cout<<xstr;
}