c++字符串详讲(string)

本文详细介绍了C++中的字符串,包括字符串的基础概念、string头文件中的常用函数,并通过简单和进阶的例题解析,帮助读者巩固和提升字符串操作技能。

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


前言

字符串
每一年的比赛中都会有所涉及
显得它十分的重要
这里会有十分详细的讲解


温馨提示:string虽然好用,但是时间复杂度是比字符数组高的,但是在普及组比赛中不会卡这个东西的

一、字符串是什么?

一般来说

二、字符串详讲

1.string头文件和与它相关的常用函数

字符串string的头文件是(不是,cstring是char数组函数的头文件)

而他的函数有:

string a;		生成空字符串
string s(strs)	将strs的内容复制到s中
str.length()	返回str的长度(size()等同)
getline(str)	输入str(带空格一起输入)
insert(pos,str)	在原串下标为pos的字符前插入字符串str
insert(pos,str,pos1,n)	str从下标为pos1开始数的n个字符插在原来下标为pos的字符前
insert(pos,n,c)		在原串下标为破碎带字符前插入n个字符c
substr()	将原字符串的所有内容复制到给子字符串
substr(pos)		将字符串从pos位置开始的内容复制给子字符串
substr(pos,len)		将原字符串从pos位置开始的len个字符复制给子字符串
find(ch,pos=0)		从自付出的pos位置开始,查找字符ch
assign(str)		将str替换原字符串的内容
assign(str,pos,n)	用字符串str从pos开始的n个字符替换原字符串
assign(n,c)		将原字符串中替换为n个字母c
isalpha()	判断字符是否为字母(在头文件<ctype>isupper()/islower()		判断大写/小写(在头文件<ctype>isdigit()		判断某个字符是否为十进制数字
isalnum()		判断某个字符是否是字母或十进制数字

2.例题小讲

简单题目(1)

题目:

“有时候,长得太帅也是一种罪。今天,我在学校的文字游戏上面取得了冠军,大家都以为我是火眼
金睛,谁能想到我是通过学习信息学,写了一个查找两个字符串中指定字符的个数差的程序,才不费
吹灰之力地赢得了本次比赛。嘿嘿,我可真厉害。不说啦,今晚得温习一下这个程序,回味回味冠军
的感觉~”

输入格式:

第一行一个句子,只包含大小写字母和空格 


第二行一个句子,只包含大小写字母和空格 


第三行一个字符,表示指定的字符,保证是大写字母或小写字母 


字符串长度小于1e6 

输出格式:

一个正整数,两个字符串中指定字符的个数差

限制:

空间限制:128MByte
时间限制:1秒

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值