-
构造与初始化
-
string str;
- 默认构造空字符串。 -
string str = "Hello";
- 使用字面量初始化。 -
string str("Hello");
- 使用构造函数初始化。 -
string str(n, ch);
- 创建一个包含n
个字符ch
的字符串。
-
-
访问与修改
-
str[i]
- 访问第i
个字符(类似数组下标)。 -
str.at(i)
- 安全访问,第i
个字符(会检查越界)。 -
str.front()
- 返回第一个字符。 -
str.back()
- 返回最后一个字符。 -
str.data()
- 返回C风格字符串(指向字符数组的指针)。 -
str.c_str()
- 返回C风格字符串的常量指针。
-
-
大小与容量
-
str.size()
或str.length()
- 获取字符串的长度。 -
str.capacity()
- 获取当前分配的内存容量。 -
str.empty()
- 判断字符串是否为空。 -
str.resize(n)
- 调整字符串的大小。
-
-
修改字符串
-
str.append(str2)
- 连接字符串str2
到当前字符串。 -
str.insert(pos, str2)
- 在位置pos
插入字符串str2
。 -
str.erase(pos, n)
- 删除从位置pos
开始的n
个字符。 -
str.replace(pos, n, str2)
- 替换从位置pos
开始的n
个字符为str2
。 -
str.push_back(ch)
- 向字符串末尾添加一个字符ch
。 -
str.pop_back()
- 删除最后一个字符。
-
-
查找与子串操作
-
str.find(sub)
- 查找子字符串sub
的第一次出现位置。 -
str.rfind(sub)
- 查找子字符串sub
的最后一次出现位置。 -
str.find_first_of(chars)
- 查找chars
中任意字符的第一次出现。 -
str.find_last_of(chars)
- 查找chars
中任意字符的最后一次出现。 -
str.substr(pos, n)
- 返回从pos
位置开始的长度为n
的子字符串。
-
-
比较
-
str == str2
- 比较两个字符串是否相等。 -
str != str2
- 判断两个字符串是否不相等。 -
str < str2
,str > str2
- 字符串字典序比较。
-
-
转换与其他功能
-
stoi(str)
- 将字符串转换为int
。 -
stol(str)
- 将字符串转换为long
。 -
stof(str)
- 将字符串转换为float
。 -
to_string(val)
- 将int
、float
等转换为字符串。
-
-
字符串操作的其他函数
-
str.clear()
- 清空字符串内容。 -
str.swap(str2)
- 交换两个字符串的内容。 -
str.resize(n, ch)
- 调整字符串的大小,不足n
时填充字符ch
。 -
str.trim()
- 去除字符串两端的空白(需要手动实现,C++标准库没有提供直接方法)。
-
C++字符串
最新推荐文章于 2025-05-20 22:23:34 发布