网易首页 > 网易号 > 正文 申请入驻

程序设计实习:7.4string类

0
分享至

程序设计实习:7.4string类

string 类:

是一个模板类, 它的定义如下: typedef basic_stringstring; 使用string类要包含头文件string对象的初始化。

string s1("Hello"); // 一个参数的构造函数

string s2(8, ‘x’); // 两个参数的构造函数

string month = “March”;

不提供以字符和整数为参数的构造函数 错误的初始化方法:

string error1 = ‘c’; // 错

string error2(‘u’); // 错

string error3 = 22; // 错

string error4(8); // 错 可以将字符赋值给string对象

string s; s = ‘n’;

构造的string太长而无法表达:

会抛出length_error异常 string 对象的长度用成员函数 length()读取;

string s("hello"); cout << s.length() << endl; string 支持流读取运算符

string stringObject; cin >> stringObject; string 支持getline函数

string s; getline(cin, s);

string的赋值和连接:

用 ‘=’ 赋值

string s1("cat"), s2; s2 = s1; 用 assign成员函数复制

string s1("cat"), s3; s3.assign(s1); 用 assign成员函数部分复制

string s1("catpig"), s3; s3.assign(s1, 1, 3); //从s1 中下标为1的字符开始复制3个字符给s3

单个字符复制

s2[5] = s1[3] = ‘a’;

逐个访问string对象中的字符

string s1("Hello");

for(int i=0; i<s1.length(); i++)

cout << s1.at(i) << endl;

成员函数at会做范围检查, 如果超出范围, 会抛出

out_of_range异常, 而下标运算符不做范围检查

用 + 运算符连接字符串 string s1("good "), s2("morning! "); s1 += s2; cout << s1; 用成员函数 append 连接字符串 string s1("good "), s2("morning! "); s1.append(s2); cout << s1; s2.append(s1, 3, s1.size()); //s1.size(), s1字符数 cout << s2; //下标为3开始, s1.size()个字符 //如果字符串内没有足够字符, 则复制到字符串最后一个字符。

比较string:

输出 0 // hello == hello 1 // hello > hell -1 // hell < hello -1 // el < hell 1 // hello > hell

子串:

成员函数 substr() string s1("hello world"), s2; s2 = s1.substr(4,5); //下标4开始5个字符 cout << s2 << endl;

交换string:

成员函数 swap() string s1("hello world"), s2("really"); s1.swap(s2); cout << s1 << endl; cout << s2 << endl;

string的特性:

成员函数 capacity() 返回无需增加内存即可存放的字符 数 成员函数maximum_size() 返回string对象可存放的最大字符 数 成员函数length() 和size()相同 返回字符串的大小 /长度 成员函数empty() 返回string对象是否为 空 成员函数resize() 改变string对象的长度。

寻找string中的字符:

成员函数 find()

string s1("hello world"); s1.find("lo"); //在s1中从前向后查找 “lo” 第一次出现的地方 //如果找到, 返回 “lo”开始的位置, 即 l 所在的位置下标 //如果找不到, 返回 string::npos (string中定义的静态常量) 成员函数 rfind()

string s1("hello world"); s1.rfind("lo"); //在s1中从后向前查找 “lo” 第一次出现的地方 //如果找到, 返回 “lo”开始的位置, 即 l 所在的位置下标 //如果找不到, 返回 string::npos

成员函数 find_first_of()

string s1("hello world"); s1.find_first_of(“abcd"); //在s1中从前向后查找 “abcd” 中任何一个字符第一次出现的地方 //如果找到, 返回找到字母的位置; 如果找不到, 返回 string::npos 成员函数 find_last_of()

string s1("hello world"); s1.find_last_of(“abcd"); //在s1中查找 “abcd” 中任何一个字符最后一次出现的地方 //如果找到, 返回找到字母的位置; 如果找不到, 返回 string::npos

成员函数 find_first_not_of()

string s1("hello world"); s1.find_first_not_of(“abcd"); //在s1中从前向后查找不在 “abcd” 中的字母第一次出现的地方 //如果找到, 返回找到字母的位置; 如果找不到, 返回 string::npos 成员函数 find_last_not_of()

string s1("hello world"); s1.find_last_not_of(“abcd"); //在s1中从后向前查找不在 “abcd” 中的字母第一次出现的地方 //如果找到, 返回找到字母的位置; 如果找不到, 返回 string::npos

替换string中的字符:

在string中插入字符:

转换成C语言式char *字符串:

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
恭喜穆帅!欲重返意甲!截胡孔蒂,接班19冠豪门,国米嗅到不安

恭喜穆帅!欲重返意甲!截胡孔蒂,接班19冠豪门,国米嗅到不安

阿泰希特
2024-05-15 10:54:06
有人还等着房价继续暴跌······

有人还等着房价继续暴跌······

地产观点
2024-05-13 07:33:02
丢单刀后,孙兴慜社媒被冲:收曼城钱了!丑陋的韩国人,注定0冠

丢单刀后,孙兴慜社媒被冲:收曼城钱了!丑陋的韩国人,注定0冠

我爱英超
2024-05-15 09:58:38
陈梦首度回应王曼昱落选风波!拉黑多名国乒球迷?情绪崩溃破防

陈梦首度回应王曼昱落选风波!拉黑多名国乒球迷?情绪崩溃破防

宝哥精彩赛事
2024-05-16 00:05:50
汪小菲携未婚妻吃火锅,还在公众场合抽雪茄,大佬范十足

汪小菲携未婚妻吃火锅,还在公众场合抽雪茄,大佬范十足

点点细语
2024-05-15 16:40:08
大瓜!55岁解晓东经商失败,欠债2800万,价值4280万豪宅遭法拍!

大瓜!55岁解晓东经商失败,欠债2800万,价值4280万豪宅遭法拍!

娱圈小愚
2024-05-15 09:32:53
后续!广东高速因桃子未熟不让走绿通:知情人爆料,真相果不简单

后续!广东高速因桃子未熟不让走绿通:知情人爆料,真相果不简单

今日美食分享
2024-05-15 19:49:03
长期有“性”生活的女性,都有3个明显特征,很准!

长期有“性”生活的女性,都有3个明显特征,很准!

闻心品阁
2024-05-15 09:12:37
最新图像显示菲非法“坐滩”船只锈蚀极为严重 专家:或对海洋生物造成不可逆伤害

最新图像显示菲非法“坐滩”船只锈蚀极为严重 专家:或对海洋生物造成不可逆伤害

环球时报国际
2024-05-15 13:54:52
提车刚满半月,长城炮车主被车顶电动帐篷卡脖身亡!销售称未按说明书流程操作,车企及帐篷生产方刚刚回应了

提车刚满半月,长城炮车主被车顶电动帐篷卡脖身亡!销售称未按说明书流程操作,车企及帐篷生产方刚刚回应了

每日经济新闻
2024-05-15 12:47:47
幽默段子:给表婶打电话,听她说话气喘吁吁的。我坏笑着说让她忙吧,但手机没挂。没想到,表婶也没挂……

幽默段子:给表婶打电话,听她说话气喘吁吁的。我坏笑着说让她忙吧,但手机没挂。没想到,表婶也没挂……

微法官
2024-05-15 00:03:23
3-0,34岁老将状态堪忧,跑不动,传不好!朱婷闺蜜有望火速支援

3-0,34岁老将状态堪忧,跑不动,传不好!朱婷闺蜜有望火速支援

我就是一个说球的
2024-05-15 15:09:47
一电商基层员工一年受贿9200万,扯出多位佛山家具从业者

一电商基层员工一年受贿9200万,扯出多位佛山家具从业者

南方都市报
2024-05-14 23:48:10
你美国说了不算!亚洲各国抱团反击,美联储的态度180度大转弯

你美国说了不算!亚洲各国抱团反击,美联储的态度180度大转弯

北向财经
2024-05-15 11:13:25
女同学因“姓名简单”走红,一共只有两笔,班主任却说:叫不出口

女同学因“姓名简单”走红,一共只有两笔,班主任却说:叫不出口

妍妍教育日记
2024-05-12 07:25:03
外媒:最后的纷争将是犹太人和中国的较量,原因让人细思极恐!

外媒:最后的纷争将是犹太人和中国的较量,原因让人细思极恐!

小lu侃侃而谈
2024-05-15 21:28:30
庾澄庆伊能静同日抵达美国,参加儿子毕业典礼,或将迎来世纪同框

庾澄庆伊能静同日抵达美国,参加儿子毕业典礼,或将迎来世纪同框

娱絮
2024-05-16 00:51:21
韩德君23+6近3年最强:秀隔扣创多里程碑 两节9中9统治内线

韩德君23+6近3年最强:秀隔扣创多里程碑 两节9中9统治内线

醉卧浮生
2024-05-15 21:29:30
微信“陷阱”正式被确认!多数人还被蒙在鼓里,看看你是否已中招

微信“陷阱”正式被确认!多数人还被蒙在鼓里,看看你是否已中招

心情独处
2024-05-15 07:55:19
抢在普京访华之前,中印终于谈妥,莫迪对华示好,中国专机出发

抢在普京访华之前,中印终于谈妥,莫迪对华示好,中国专机出发

青年的背包
2024-05-16 00:16:18
2024-05-16 02:46:44
爱你雅课
爱你雅课
科普知识,科教视频
213文章数 623关注度
往期回顾 全部

科技要闻

蔚来新品牌乐道L60预售价21.99万元起

头条要闻

美方对中国电动汽车等加税 中使馆:强烈不满

头条要闻

美方对中国电动汽车等加税 中使馆:强烈不满

体育要闻

乔丹-贝尔:CBA外援的另一种用法?

娱乐要闻

欧阳娜娜营销才女人设却没拿到学位?

财经要闻

楼市小作文来了,大招马上出?

汽车要闻

无感胜有感 驾驶沃尔沃EX30竟与众不同?

态度原创

家居
房产
数码
艺术
军事航空

家居要闻

吴家大宅 敛藏人生百味

房产要闻

万华“史诗级”交付,给海南楼市上了一课!

数码要闻

讯飞会议耳机Pro 2发布:1399元起 升级viaim AI

艺术要闻

湖山放怀——牛朝山水画作品展 呈现10年间160余幅山水佳作

军事要闻

布林肯突访基辅 称美国武器开始运抵乌克兰

无障碍浏览 进入关怀版