C/C++字符串

C风格的字符串

本身是一个字符数组,'\0’是结束标志
输入:scanf
输出:printf

C++风格的字符串

#include<string>
using namespace std;
string var=str;//str可以是一个字符数组

演示

#include<string>
#include<cstdio>
using namespace std;
int main() {
	char buf[100];//申请一个字符数组
	//scanf_s("%s", buf,sizeof(buf));//只能读取一个单词
	fgets(buf, 100,stdin);//读取一整行,包含换行符
	string str = buf;//用一个字符数组组成一个c++风格的字符串
	printf("str=%s\n", str.c_str());//将C++风格的字符串转换成字符数组
}
  • 求长度:str.length()
  • 访问字符串种的每个字符:
    1、str[i]
    2、迭代器
for(string::iteraror it=str.begin();it!=str.end();it++){
//++it更改迭代器的指向,到下一个元素
printf("%c\n",*it);//通过地址访问
}

操作字符串的内容

  • 连接 +(只针对C++风格字符串)
  • 删除 erase str.erase(i)删除i之后的
  • 清空 clear str.clear()

string的find方法str.find(*)
查找字符或字串
find的返回值:
1、如果找到了,匹配内容的起点的下标
2、如果没有找到,返回string::npos

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值