18.4 string类功能
在讨论了如何创建字符串,以及对字符串进行输入输出之后,本节将讨论string类的其他一些public成员函数,通过这些函数可以方便地对字符串进行赋值和清空、实现不同字符串间的比较、字符的插入、删除和追加以及搜索与查找等,下面分别进行讲解。
18.4.1 string字符串和C风格字符串的转换
C风格字符串转换为string字符串相对来说比较简单,通过构造函数即可实现。但由于string字符串实际上是类对象,其并不以空字符'\0'结尾,因此string字符串向C风格字符串的转化是通过3个成员函数完成的,如下所示。
const char*data();//以字符数组的形式返回字符串内容,但末尾并不添加'\0' const char*c_str();//返回一个以'\0'结尾的字符数组 int copy(char*s,size_type n);//字符串的内容复制或写入既有的C风格字符串或字符数组内