c++++ stl 中用于字符串处理的主要函数包括:复制 (std::string::copy())、查找 (std::string::find())、替换 (std::string::replace())、提取子字符串 (std::string::substr())、字符串到整数转换 (std::stoi())、整数到字符串转换 (std::to_string())。此外,还提供了一些辅助函数,如单词统计例程中使用的 isalpha() 和 tolower()。
C++ STL 中用于字符串处理的函数
C++ 标准模板库 (STL) 为字符串处理提供了广泛的函数,简化和增强字符串操作。以下是几个最常用的 STL 字符串函数:
- std::string::copy():将字符串的全部或部分复制到目标字符数组中。
std::string str = "Hello world"; char dest[12]; str.copy(dest, 12); // 复制 "Hello worl" 到 dest,留出空字符
- std::string::find():搜索子字符串在字符串中的第一个出现位置。
std::string str = "This is a sample string"; size_t pos = str.find("sample"); // pos = 10
- std::string::replace():将字符串中指定的子字符串替换为新字符串。
std::string str = "C++ is a powerful language"; str.replace(0, 3, "STL"); // 替换 "C++" 为 "STL"
- std::string::substr():从字符串中提取子字符串。
std::string str = "This is a string"; std::string substring = str.substr(4, 6); // substring = "is a"
- std::stoi():将字符串转换为整数。
std::string num = "123"; int n = std::stoi(num); // n = 123
- std::to_string():将整数转换为字符串。
int n = 456; std::string num = std::to_string(n); // num = "456"
实战案例:单词统计
立即学习“C++免费学习笔记(深入)”;
以下是一个使用 STL 字符串函数实现单词统计的小示例:
#include <iostream> #include <map> #include <string> using namespace std; int main() { string str = "This is a sample string, with multiple words"; // 创建单词计数 map map<string, int> wordCount; // 分割字符串并更新计数 string word; for (char c : str) { if (isalpha(c)) { word += tolower(c); } else if (!word.empty()) { wordCount[word]++; word.clear(); } } // 打印单词计数 for (auto& [word, count] : wordCount) { cout << word << ": " << count << endl; } return 0; }
以上就是C++ 函数的 STL 函数有哪些用于字符串处理?的详细内容,更多请关注php中文网其它相关文章!
版权声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系 yyfuon@163.com