|
[color=rgb(var(--ds-rgb-label-1))] 以下是C++中常用的字符串函数及其功能的表格,附带简单的案例说明: 函数名 功能描述 示例代码
length() 返回字符串的长度(字符数)string str = "Hello"; cout << str.length(); // 输出 5
size() 与 length() 功能相同,返回字符串的长度string str = "Hello"; cout << str.size(); // 输出 5
empty() 检查字符串是否为空,返回布尔值string str = ""; cout << str.empty(); // 输出 1 (true)
clear() 清空字符串内容string str = "Hello"; str.clear(); cout << str; // 输出空字符串
append() 在字符串末尾追加字符串或字符string str = "Hello"; str.append(" World"); cout << str; // 输出 "Hello World"
push_back() 在字符串末尾追加一个字符string str = "Hello"; str.push_back('!'); cout << str; // 输出 "Hello!"
insert() 在指定位置插入字符串或字符string str = "Hello"; str.insert(5, " World"); cout << str; // 输出 "Hello World"
erase() 删除字符串中的一部分string str = "Hello World"; str.erase(5, 6); cout << str; // 输出 "Hello"
replace() 替换字符串中的一部分string str = "Hello World"; str.replace(6, 5, "There"); cout << str; // 输出 "Hello There"
substr() 返回字符串的子串string str = "Hello World"; cout << str.substr(6, 5); // 输出 "World"
find() 查找子串或字符在字符串中首次出现的位置,返回索引string str = "Hello World"; cout << str.find("World"); // 输出 6
rfind() 查找子串或字符在字符串中最后一次出现的位置,返回索引string str = "Hello World"; cout << str.rfind('o'); // 输出 7
compare() 比较两个字符串,返回整数结果(0表示相等,负数表示小于,正数表示大于)string str1 = "Hello"; string str2 = "World"; cout << str1.compare(str2); // 输出负数
c_str() 返回一个指向以空字符结尾的字符数组的指针string str = "Hello"; const char* cstr = str.c_str(); cout << cstr; // 输出 "Hello"
at() 返回指定位置的字符,提供边界检查string str = "Hello"; cout << str.at(1); // 输出 'e'
operator[] 返回指定位置的字符,不提供边界检查string str = "Hello"; cout << str[1]; // 输出 'e'
swap() 交换两个字符串的内容string str1 = "Hello"; string str2 = "World"; str1.swap(str2); cout << str1; // 输出 "World"
assign() 将字符串内容替换为指定的字符串或字符string str = "Hello"; str.assign("World"); cout << str; // 输出 "World"
resize() 调整字符串的大小,可以截断或填充字符string str = "Hello"; str.resize(10, '!'); cout << str; // 输出 "Hello!!!!!"
copy() 将字符串的内容复制到字符数组中string str = "Hello"; char buffer[10]; str.copy(buffer, 5); buffer[5] = '\0'; cout << buffer; // 输出 "Hello"这些函数是C++标准库中std::string类的一部分,提供了丰富的字符串操作功能。
[color=var(--ds-icon-button-text-color)]
[color=var(--ds-icon-button-text-color)]
[color=var(--ds-icon-button-text-color)]
[color=var(--ds-icon-button-text-color)]
C++可变数组常用函数及功能,并带有案例,给我做个表格[color=var(--ds-icon-button-text-color)]
[color=var(--ds-icon-button-text-color)]
[color=rgb(var(--ds-rgb-label-1))]
以下是C++中常用的可变数组(std::vector)函数及其功能的表格,附带简单的案例说明: 函数名 功能描述 示例代码
push_back() 在数组末尾添加一个元素vector<int> vec = {1, 2}; vec.push_back(3); // vec = {1, 2, 3}
pop_back() 删除数组末尾的元素vector<int> vec = {1, 2, 3}; vec.pop_back(); // vec = {1, 2}
size() 返回数组中元素的个数vector<int> vec = {1, 2, 3}; cout << vec.size(); // 输出 3
empty() 检查数组是否为空,返回布尔值vector<int> vec = {}; cout << vec.empty(); // 输出 1 (true)
clear() 清空数组中的所有元素vector<int> vec = {1, 2, 3}; vec.clear(); // vec = {}
insert() 在指定位置插入一个或多个元素vector<int> vec = {1, 3}; vec.insert(vec.begin() + 1, 2); // vec = {1, 2, 3}
erase() 删除指定位置或范围的元素vector<int> vec = {1, 2, 3}; vec.erase(vec.begin() + 1); // vec = {1, 3}
at() 返回指定位置的元素,提供边界检查vector<int> vec = {1, 2, 3}; cout << vec.at(1); // 输出 2
operator[] 返回指定位置的元素,不提供边界检查vector<int> vec = {1, 2, 3}; cout << vec[1]; // 输出 2
front() 返回数组的第一个元素vector<int> vec = {1, 2, 3}; cout << vec.front(); // 输出 1
back() 返回数组的最后一个元素vector<int> vec = {1, 2, 3}; cout << vec.back(); // 输出 3
begin() 返回指向数组第一个元素的迭代器vector<int> vec = {1, 2, 3}; auto it = vec.begin(); cout << *it; // 输出 1
end() 返回指向数组末尾(最后一个元素之后)的迭代器vector<int> vec = {1, 2, 3}; auto it = vec.end(); cout << *(it - 1); // 输出 3
rbegin() 返回指向数组最后一个元素的反向迭代器vector<int> vec = {1, 2, 3}; auto it = vec.rbegin(); cout << *it; // 输出 3
rend() 返回指向数组开头(第一个元素之前)的反向迭代器vector<int> vec = {1, 2, 3}; auto it = vec.rend(); cout << *(it - 1); // 输出 1
resize() 调整数组的大小,可以截断或填充默认值vector<int> vec = {1, 2}; vec.resize(4, 0); // vec = {1, 2, 0, 0}
reserve() 预分配数组的容量,避免频繁重新分配内存vector<int> vec; vec.reserve(10); cout << vec.capacity(); // 输出 10
capacity() 返回数组当前分配的容量大小vector<int> vec; vec.reserve(10); cout << vec.capacity(); // 输出 10
shrink_to_fit() 将数组的容量缩减到与当前元素数量匹配vector<int> vec = {1, 2, 3}; vec.shrink_to_fit(); cout << vec.capacity(); // 输出 3
swap() 交换两个数组的内容vector<int> vec1 = {1, 2}; vector<int> vec2 = {3, 4}; vec1.swap(vec2); // vec1 = {3, 4}, vec2 = {1, 2}
assign() 用指定值替换数组的内容vector<int> vec; vec.assign(3, 10); // vec = {10, 10, 10}
emplace() 在指定位置构造并插入一个元素(避免额外的拷贝或移动操作)vector<int> vec = {1, 3}; vec.emplace(vec.begin() + 1, 2); // vec = {1, 2, 3}
emplace_back() 在数组末尾构造并插入一个元素(避免额外的拷贝或移动操作)vector<int> vec = {1, 2}; vec.emplace_back(3); // vec = {1, 2, 3}示例代码:cpp
[backcolor=rgba(var(--ds-rgba-transparent))]复制
#include <iostream>#include <vector>using namespace std;int main() { // 创建一个vector并初始化 vector<int> vec = {1, 2, 3}; // 使用push_back添加元素 vec.push_back(4); // vec = {1, 2, 3, 4} // 使用pop_back删除最后一个元素 vec.pop_back(); // vec = {1, 2, 3} // 使用insert在指定位置插入元素 vec.insert(vec.begin() + 1, 5); // vec = {1, 5, 2, 3} // 使用erase删除指定位置的元素 vec.erase(vec.begin() + 2); // vec = {1, 5, 3} // 使用at访问元素 cout << "Element at index 1: " << vec.at(1) << endl; // 输出 5 // 使用size获取元素数量 cout << "Size of vector: " << vec.size() << endl; // 输出 3 // 使用clear清空vector vec.clear(); // vec = {} // 检查是否为空 if (vec.empty()) { cout << "Vector is empty!" << endl; } return 0;}
这些函数是C++标准库中std::vector类的一部分,提供了丰富的动态数组操作功能。
|
|