C++笔记(基础)string基础

string(基础)

定义string(string是一个类,是一个并非基本数据类型的复合数据类型)

1.string str;

2.string str = "balabala";

3.string str2(str1);//把str1的内容赋值到str2中

4.string str(arr,5)//从数组的开头取5个元素初始化

**获取长度:**用 length() 或 size() 成员函数获取字符串长度,

如 int len = str.length(); length() 和 size() 功能相同。(不计算最后的\n长度)

**拼接:**可通过 + 运算符和 += 运算符拼接字符串,

string str1 = "Hello"; string str2 = " World";

string result = str1 + str2; str1 += str2; 也能实现拼接。

**访问字符:**可通过[] 运算符或 at() 成员函数访问字符串中特定位置字符,

char c = str[0]; char c2 = str.at(1);

[] 不检查越界, at() 会检查,越界时 at() 会抛出 out_of_range 异常。

**子串提取:**使用 substr() 成员函数提取子串,

std::string sub = str.substr(1, 3); 表示从索引 1 开始提取长度为 3 的子串。

查找字符或子串: find() 成员函数用于查找字符或子串位置。

size_t pos = str.find("ll"); ,返回找到的位置,没找到返回 std::string::npos 。

**比较:**用 compare() 成员函数比较两个字符串,

int cmp = str1.compare(str2);

返回 0 表示相等,小于 0 表示 str1 小于 str2 ,大于 0 表示 str1 大于 str2 。

也可用关系运算符( == 、 != 、 < 等)比较。

string str;

str="yzy"

sizeof(str)时不会输出出来字符串的长度,

输出的是string对象本身的大小(管理字符串内部结构等所占字节数),一般是24;

如果想输出字符串大小,要用str.size()/str.length()

相关推荐
时光不去10 分钟前
java接口自动化之allure本地生成报告
运维·笔记·自动化
芳草萋萋鹦鹉洲哦2 小时前
【Windows】tauri+rust运行打包工具链安装
开发语言·windows·rust
杨浦老苏2 小时前
简单直观的笔记管理器Poznote
笔记·docker·群晖
权泽谦2 小时前
R Shiny 交互式网页实战:从零到上线可视化应用
开发语言·信息可视化·r语言
hweiyu002 小时前
Go Fiber 简介
开发语言·后端·golang
Molesidy4 小时前
【VSCode】【Clangd】Win下的基于LLVM/Clangd+Clangd插件+MINGW+CMake的VSCode配置C/C++开发环境的详细教程
c++·ide·vscode·clangd·llvm
椰壳也可4 小时前
06_作业基于CubeMx实现按键控制LED灯(裸机)(立芯嵌入式笔记)
笔记·stm32·学习
ᐇ9595 小时前
Java LinkedList集合全面解析:双向链表的艺术与实战
java·开发语言·链表
码银5 小时前
【数据结构】顺序表
java·开发语言·数据结构
Mr_WangAndy5 小时前
C++_chapter13_C++并发与多线程_多线程概念,死锁,unique_lock(),lock_guard()使用
c++·lock·死锁·并发与多线程·unlock·lock_guard·unique_lock