1、定义、初始化一个string
1. string str1="This is string1.";
2. string str2("This is string2");
2、string 对象的大小比较
1. string str1 = "Hello";
2. string str2 = "Hello world";
3. string str3 = "Hiya";
以上三者比较大小,结果是 str3 > str2 > str1.
方法:当string对象比较大小时,从第一个字符向后比较大小。
3、相加(连接)
1. 正确:
- str1=str2+str3;
- str1=str2+"ABCD";//str2是一个已经定义的string对象,可以为空。
- str1=str2+"ABCD"+"EFGH";//str2是一个已经定义的string对象,可以为空。
- str1="ABCD"+str2;//str2是一个已经定义的string对象,可以为空。
2. 错误
- str1="abc"+"def";
- str1="abc"+"def"+str2;
总结:加法不能进行在两个单纯的两个字符串字面值之间。
4、获取string字符
通过下表操作符[]:
str1[string::size_type];
例:
string str1="I love it.";
第一个字符:str1[0]=='I';
最后一个字符:str1[str1.size()-1]==".";
若引用str1[str1.size1()]则会引起溢出错误。
5、string 对象中字符的处理
- 在头文件cctype中。(但是不用在主文件中include此头文件,应该是已经包含进去了)
函数名称 返回值
isalnum() 如果参数是字母数字,即字母或数字,该函数返回true
isalpha() 如果参数是字母,该函数返回真
isblank() 如果参数是空格或水平制表符,该函数返回true
iscntrl() 如果参数是控制字符,该函数返回true
isdigit() 如果参数是数字(0~9),该函数返回true
isgraph() 如果参数是除空格之外的打印字符,该函数返回true
islower() 如果参数是小写字母,该函数返回true
isprint() 如果参数是打印字符(包括空格),该函数返回true
ispunct() 如果参数是标点符号,该函数返回true
isspace() 如果参数是标准空白字符,如空格、进纸、换行符、回车水平制表符或者垂直制表符,该函数返回true
isupper() 如果参数是大写字母,该函数返回true
isxdigit() 如果参数是十六进制的数字,即0~9、a~f、A~F,该函数返回true
tolower() 如果参数是大写字符,则返回其小写,否则返回该参数
toupper() 如果参数是小写字母,则返回其大写,否则返回该参数
常用的有:
tolower()——toupper()
isupper()——islower()
isalnum()——isalpha()