C/c++stl库常用库函数总结
时间: 2025-07-16 11:21:06 浏览: 17
<think>好的,我现在要帮用户查找C/C++ STL常用库函数的总结。首先,用户提到了引用的两个资料,引用[1]和引用[2],里面提到了一些容器和函数,比如vector、queue、set、map,还有字符处理函数如tolower(),数学函数如ceil()、floor()等。我需要把这些内容整理出来,同时补充其他常用的STL组件和库函数。
用户可能需要一个结构清晰的总结,涵盖容器、算法、字符串处理、数学函数等部分。需要确保每个部分都有足够的例子和说明,比如容器部分要列出常用容器及其基本操作,算法部分包括排序、查找等。另外,用户提供的引用中有提到位运算和常用库函数,这部分也要包含进去。
需要注意的是,用户可能不仅需要简单的列表,还需要一些使用示例或典型应用场景。比如,在讲解vector时,可以给出如何声明和使用的代码片段;在算法部分,可以提到sort函数的使用方法。此外,要注意区分C标准库函数和C++ STL的不同,比如stdlib.h中的函数和STL中的algorithm库。
另外,用户的问题是关于“常用库函数总结”,所以应该涵盖最常用和核心的部分,避免过于深入或生僻的内容。同时,要检查是否有遗漏的重要组件,比如迭代器、pair等,这些虽然在引用中没有提到,但属于STL重要部分,应该补充进来。
最后,生成的相关问题需要围绕用户可能的后续疑问,比如性能分析、具体函数用法比较、与数据结构的关系等。确保问题能够引导用户进一步深入学习。</think># C/C++ STL常用库函数总结
## 一、容器类模板
1. **序列容器**
- `vector`(变长数组):支持随机访问,尾部插入$O(1)$
```cpp
vector<int> v = {1,2,3};
v.push_back(4); // 插入元素
```
- `deque`(双端队列):支持头尾快速插入删除
- `list`(双向链表):任意位置插入$O(1)$
2. **关联容器**[^1]
- `set/multiset`:有序集合(自动排序)
- `map/multimap`:键值对容器
```cpp
map<string, int> m;
m["apple"] = 5;
```
3. **容器适配器**
- `stack`(栈):后进先出结构
- `queue`(队列):先进先出结构
- `priority_queue`(优先队列)
---
## 二、算法库 `<algorithm>`
1. **排序与查找**
- `sort(begin, end)`:快速排序实现$O(n \log n)$
- `binary_search()`:二分查找$O(\log n)$
2. **数值操作**
- `max(a,b)/min(a,b)`
- `swap(a,b)`
3. **遍历操作**
- `for_each()`:遍历容器
- `transform()`:容器元素转换
---
## 三、字符串处理
1. `tolower()/toupper()`:字符大小写转换[^2]
2. `isdigit()/isalpha()`:字符类型判断
3. `stoi()/stol()`:字符串转数值
---
## 四、数学函数 `<math.h>`
1. **取整函数**[^2]
$$ \text{ceil}(x) = \lceil x \rceil,\quad \text{floor}(x) = \lfloor x \rfloor $$
2. **幂与对数**
`pow(base, exp)`, `log()`, `sqrt()`
---
## 五、其他重要组件
1. **迭代器**:`begin()/end()/rbegin()/rend()`
2. **pair模板**:存储两个元素
```cpp
pair<int, string> p(1, "hello");
```
3. **位运算**:`bitset`容器
阅读全文
相关推荐




















