C++中的字符串string,你真的弄懂了吗?

本文详细介绍了C++中的string类,包括其初始化方法、大小、元素访问、字符串比较、修改、替换、连接和查找等功能。string类是C++中方便易用的字符串操作工具,支持多种操作且内置安全检查。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、string类简介

string类是C++中用来操作字符串序列的、可以自身管理内存的容器,自身携带的构造函数和析构函数,可以让我们直接使用而不必关心内存的分配细节,可以说是C++中最让人放心的一个类了。

它支持元素的存取访问、字符串比较、字符串内容的修改和替换、字符串连接、字符串的查找和搜索、字符串的IO操作、可以方便的获取器大小和容量等等。因此,无论学习何种语言,字符串必是每一个程序员的最爱!

二、string类的使用

1、string类的初始化方法

string strEmpty; // 空字符串
string str1 = "ISMILELI";
string str2(str1); // str1内容复制给str2
string str3(str1,2,5);// 从str1的第2个元素开始复制5个数据给str2
string str4(str1,5,'S'); // 赋值给str4五个S
string str5(str1.begin(),str1.end()); // 迭代器的方式赋值
string str6(str1,6); // 把str1的前六个赋值给str5
cout << "str1:" << str1<<endl;

2、string类的大小

size()和length()是比较常用的获得字符串中字符个数的方法,两个效果相同。
max_size()是返回string最大能包含的字符串数,当超过时编译器会抛出length_error的异常。
capacity()是重新分配内存之前string中能包含的最大字符个数。

3、string类的元素访问

string类支持下标操作[]和函数at()访问,两者的不同之处是下标操作不检查索引的有效性,超出下标时会引起不可测的麻烦;使用at()函数会检查下标的有效性,超出下标时会抛出异常out_of_range。注意这两个操作返回的都是“引用”,当字符串被重新分配内存后可能会引起错误。第一个下标为0,最后一个为length()-1。

4、string比较操作

1》使用常用的运算符比较:>,<,==,>=,<=,!=。
2》使用compare()函数,能够区分字母的大小写比较,相同返回0,按顺序先大于返回正数,否则为负数。

string str7("abcdefg");
string 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值