c++ 标准库中string类型

1.string对象的定义及初始化(4种方法)

string s1;//调用默认的构造函数,将空字符串赋给s1

string s2("Hello");//调用构造函数,讲Hello赋给s2

string s3(s2);//将s2赋给s3

string s4(10,'a');//调用构造函数,10代表数量,a代表内容

2.string的读写(两种输入)

注:cin规则:读取并忽略开头所有的空白字符,读取字符直到遇到空白字符。(空白字符指的是空格、制表符和换行等)

getline(cin,name);//读取一整行

3.a读入一个文本:  while (getline(cin,line))   cout <<line<<endl;

b读入一个单词:    while (cin>>line)  cout <<line<<endl;

4.string的操作

(1)line.size() //查阅line的字符个数,直接输出

string::size_type size=line.size(); //string::size_type专门定义字符个数的类型

(2)s.empty()//检测s是否为空字符串,如果是,返回1;如果不是,返回0

(3)字符串的比较(一般按照字母来排序,大写字母小于小写字母,a小于b)

(4)字符串的赋值(直接用=即可)

(5)字符串的相加   s3=s1+s2;//将s2加到s1的末尾,并赋给s3

注:不允许对两个字符串直接进行相加,必须有一个是string类型的变量才可以。

(6)字符串的下标(同数组一样,可使用这样的方法对字符串中某字符进行操作)

注:即可以直接对字符串中的某字符进行修改

(7)string中字符的处理#include <cctype>

ispunct(s[index])//检查s[index]是否为标点符号;如果是,为1;不是为0;

isalnum(s[index])//检查s[index]是否为数字或者字母;如果是,为1;不是为0;

isalpha(s[index])//检查s[index]是否为字母;如果是,为1;不是为0;

iscntrl(s[index])//检查s[index]是否为控制字符;如果是,为1;不是为0;

isdigit(s[index])//检查s[index]是否为数字;如果是,为1;不是为0;

islower(s[index])//检查s[index]是否为小写字母;如果是,为1;不是为0;

ispunct(s[index])//检查s[index]是否为标点符号;如果是,为1;不是为0;

isspace(s[index])//检查s[index]是否为空字符;如果是,为1;不是为0;

isupper(s[index])//检查s[index]是否为大写字母;如果是,为1;不是为0;

isxdigit(s[index])//检查s[index]是否为十六进制;如果是,为1;不是为0;

tolower(s[index])//将s[index]变为小写字母;

toupper(s[index])//将s[index]变为大写字母;



猜你喜欢

转载自blog.csdn.net/qq_35050439/article/details/80902176