关闭

String(C++)

66人阅读 评论(0) 收藏 举报
分类:

一、初始化

string a;//被默认初始化为空字符串

string b = a;//拷贝初始化,值与a一样

string c = "hello";//c是"hello"字面值  除最后面的 空字符外的副本,

string d(c);//等价于  string d = c

string e("hello");//等价于  string e = "hello"

string f(n,'c');//f为连续n个c组成,于 string f = string(n,'c')  等价


二、string上的操作

os <<  s     //写 流os

is >> s     //读取is流

getline(cin,s) //从cin中读取一行存入 s中

s.empty()   //判断s是否为空

s.size() //返回s中字符的个数

s[n] //返回s中第n个字符的引用,位置从0开始计

s1 + s2 //返回s1,s2连接后的结果, 可以与字面值相加,但是 + 两边至少有一个是string类型

s1 = s2;

s1==s2 //判断s1,s2是否相等

s1 != s2

<, <=, >, >=  //利用字符在字典中的顺序进行大小比较,且对字母的大小写 敏感


string:: size_type 是一个无符号类型

三、对string中的每个字符进行操作

范围for(declaration : expression)   

//此语句会遍历expression中的每一个基础元素。declaration负责定义一个变量,每次迭代,被初始化为下一个基础元素

for(auto c : s)

operation


改变一个字符

在cctype头文件中定义了 一些标准库函数处理这部分工作。

isalum(c)     //是否是字母或者 数字

isalpha(c)   //是否是字母

iscntrl(c)  //是否是控制字符

isgraph(c)  //当c不是空格,但可以打印时为真

islower(c) //是否是 小写 字母

isprint(c) //是否可打印

ispunct(c) // 是否是标点符号

isspace(c) //是否为空白

isupper(c)  //是否为大写

isxdigit(c) // 是否是十六进制数字

tolower(c)  //变为 小写

toupper(c) //变为 大写


改变字符用  引用

for (auto &c : s)


四、处理 一部分字符

使用下标运算符;或者迭代器


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    文章分类
    文章存档