在C++标准库类型 string ,在调用size函数求解string 对象时,返回值为size_type类型,一种类似于unsigned类型的int 数据。可以理解为一个与unsigned含义相同,且能足够大能存储任意string的类型。在C++ primer 中 提到 库类型一般定义了一些配套类型,通过配套类型,库类型就能与机器无关。我理解为 机器可以分为16位 32位64位等,如果利用int等内置类型,容易影响最后的结果,过大的数据可能丢失。
std::string::npos
是一个常数,它等于size_type类型可以表示的最大值,用来表示一个不存在的位置
string::substr()
是C++语言函数,主要功能是复制子字符串,要求从指定位置开始,并具有指定的长度。如果没有指定长度_Count或_Count+_Off超出了源字符串的长度,则子字符串将延续到源字符串的结尾。
结果是:
think live in details.
size_t find_first_of (const string& str, size_t pos = 0)
string::find_first_of() 函数用于查找子字符串和字符串共同具有的字符在字符串中首次出现的位置。请看下面的代码:
运行结果:
Found at index : 3
本例中 s1 和 s2 共同具有的字符是 ’s’,该字符在 s1 中首次出现的下标是3,故查找结果返回3。
具体测试如下:
string重新赋值函数string::assign。
*string &assign(const char s);
//用char类型字符串s赋值
*string &assign(const char s,int n);
//用char字符串s开始的n个字符赋值
string &assign(const string &s);
//把字符串s赋给当前字符串
string &assign(int n,char c);
//用n个字符c赋值给当前字符串
string &assign(const string &s,int start,int n);
//把字符串s中从start开始的n个字符赋给当前字符串
string &assign(const_iterator first,const_itertor last);
//把first和last迭代器之间的部分赋给字符串
C++ string assign()赋值常用方法,函数assign()常用在给string类变量赋值。常用方法有:
如str2.assign(str1);即用str1给str2赋值。
如str3.assign(str1, 2, 3)。
如str4.assign(“World”, 5)。
如str5.assign(10, ‘c’)。
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://blog.csdn.net/qq_44918090/article/details/126378593
内容来源于网络,如有侵权,请联系作者删除!