C++ String类学习总结

1、string类的初始化以及一些基本的操作:

#include<iostream>
#include<string>
using namespace std;

int main(){
	
	//string对象的初始化方法 
	string str1 = "Hello";  //string对象的初始化1 
	string str2("World");	//string对象的初始化2 
	string str3(6,'a');		//将6个重复的a赋值给str3
	/*string str = 'a'; string str('a'); string str = 4;  
	注意这是错误的初始化方法*/
	
	cout<<str1<<endl<<str2<<endl<<str3<<endl;
	
	//可以将字符赋值给string对象,例如:
	string s;
	s = 'a'; 
	cout<<s<<endl;
	 
	string str4;
	int len,len1;
	//复制str1到str4
	str4 = str1;
	cout<<"复制的结果为:"<<str4<<endl; 
	
	//用assign()成员函数复制
	str4.assign(str1);
	cout<<"使用assign成员函数复制的结果为:"<<str4<<endl; 
	
	//用assign()成员函数部分复制
	str4.assign(str1,1,3); //从str1中下标为1的字符开始复制3个字符 
	cout<<"使用assign成员函数部分复制的结果为:"<<str4<<endl;
	
	//使用 + 连接str1和str2,并将结果存在str4中 
	str4 = str1 + str2;
	cout<<"用 + 连接的结果为:"<<str4<<endl;
	
	//使用成员函数append()连接 str1和str2
	str1.append(str2);
	cout<<"使用成员函数append连接的结果为:"<<str1<<endl; 
	
	str1.append(str3, 2,str3.size());
	//从下标为2开始,str3.size()个字符,如果没有足够的字符则复制到字符串的最后一个字符 
	cout<<str1<<endl; 
	
	//计算str4的长度,并将结果保存在len中 两种方法皆可以 
	len = str4.size();
	len1 = str4.length();
	cout<<"str4的长度为:"<<len<<" "<<len1<<endl; 
	
	 
	return 0;
} 

运行结果:

2、string类型对象的输入:

#include<iostream>
#include<string>
using namespace std;

int main(){
	string str1,str2;
	cout<<"请输入字符串str1:"; 
	getline(cin,str1);
	cout<<str1<<endl;
	//还有一种可以设置终结符的操作,例如我们以'#'作为终止输入条件 
	cout<<"请输入字符串str2:";
	getline(cin, str2, '#');
	cout<<str2<<endl;
	
	return 0;
}

运行结果:

3、字符串数组的使用:

可以使用string类来声明一个字符串数组,使用at()方法来访问字符串数组中每一个字符串的具体字符。

#include<iostream>
#include<string>
using namespace std;

int main(){
	string name[6];
	//输入6个字符串 
	for(int i=0;i<6;i++){
		getline(cin, name[i]);
	}
	//输出每一个字符串的内容,并输出每一个字符串的第一个字符
	for(int i=0;i<6;i++){
		cout<<name[i]<<" "<<name[i].at(0)<<endl;
	}
	return 0;
	
}

运行结果:

发布了61 篇原创文章 · 获赞 35 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/qq_41575507/article/details/104416510