C++ string中的函数和常用用法

简介: C++ 中string中的函数和常用用法

string中常用操作函数:

s.substr(p,n) 截取字符的某个子串。p表示字符串的某个下标,n表示长度,返回字符串s中下标从p开始的n个字符的字符串,如果n省略就取到底。

s.erase(p,n) 删除s中从p开始的n个字符,如果n省略,就取到底。

s.erase(string::iterator it)删除it 位置的字符

s.erase(s.first,s.last),删除first-last之间的所有元素

s1.insert(p,s2,pos,n) 在字符串s1位置p前插入字符串s2,后面两个参数可以省略。如果有后面两个参数pos和n,则从s2中截取从pos位置开始长度为n的字符串,插入到字符串s1位置p前。

s.find(s1) 在字符串s中从前往后查找s1,如果能找到,返回第一次出现的s1首字母下标位置,找不到返回-1 (找不到也可写成返回string::npos

s.find(s1,pos) 是用来寻找从字符串s1中pos开始(包括pos处字符)匹配s1的位置。

s.rfind(s1) 在s中从后往前寻找字符串s1后边第一次出现的下标。

s.rfind(s1,pos)在s中从pos位置开始从后往前寻找字符串s1后边第一次出现的下标。

s.insert(p,n,c) 在字符串s中p位置前插入n个字符c。

s.clear() 清空字符串

string s; s="12321"; s=""; 给字符串赋值空串来清空

s.size() 或者s.length() 返回字符串s的长度。

s.empty() 判断字符串s是否为空,为空返回1,非空返回0。

s[i] 返回字符串s中下标为i的位置,string中下标也是从0开始。

count(s.begin(),s.end(), 'a')可以用来统计字符串中某个字符的个数

赋值运算符:= 将后面的字符串赋值给前面的字符串

比较运算符:== != < <= > >= 比较两个字符串的字典序大小

连接运算符: + += 将一个字符串加到另一个字符串后面

相关文章
|
1月前
|
C++ 容器
|
29天前
|
程序员 C++ 容器
在 C++中,realloc 函数返回 NULL 时,需要手动释放原来的内存吗?
在 C++ 中,当 realloc 函数返回 NULL 时,表示内存重新分配失败,但原内存块仍然有效,因此需要手动释放原来的内存,以避免内存泄漏。
|
1月前
|
存储 安全 C++
【C++打怪之路Lv8】-- string类
【C++打怪之路Lv8】-- string类
21 1
|
1月前
|
存储 前端开发 C++
C++ 多线程之带返回值的线程处理函数
这篇文章介绍了在C++中使用`async`函数、`packaged_task`和`promise`三种方法来创建带返回值的线程处理函数。
45 6
|
1月前
|
C++
C++ 多线程之线程管理函数
这篇文章介绍了C++中多线程编程的几个关键函数,包括获取线程ID的`get_id()`,延时函数`sleep_for()`,线程让步函数`yield()`,以及阻塞线程直到指定时间的`sleep_until()`。
23 0
C++ 多线程之线程管理函数
|
1月前
|
C++ 容器
|
1月前
|
C++ 容器
|
1月前
|
C语言 C++
深度剖析C++string(中)
深度剖析C++string(中)
47 0
|
1月前
|
存储 编译器 程序员
深度剖析C++string(上篇)(2)
深度剖析C++string(上篇)(2)
35 0
|
1月前
|
存储 Linux C语言
深度剖析C++string(上篇)(1)
深度剖析C++string(上篇)(1)
30 0