总结string类型的一些操作

string数据类型能够在字符串模拟题目中得到很大的方便,有很多特别实用的操作,比如查找、替换、将字符串类型换成int型等

 

1.输入:

 string数据类型输入有很多种方式.

(1)如果我们要每次输入一个单词(不含空格),可以直接用cin>>s1;

(2)如果我们每次要输入一句话呢?包含空格,遇换行符结束。这个时候我们可以采用getline。

            getline(cin,s1);这句话可以输入一句话,直至空格结束

 

2.操作(一些基本的操作,比如返回字符串长度,比较,连接之类的):

s.empty() 

如果s为空串,则返回true,否则返回false

s.size()

返回s中字符的个数

s[n] 

返回s中位置为n的字符,位置从0开始计数(可将值赋给s[n])

s1+s2

s1s2连接成一个新字符串,返回新生成的字符串

s1=s2

s1内容替换为s2的副本

v1==v2

比较v1v2 的内容,相等则返回true ,否则返回false

!=,<,<=,>>=

保持这些操作符惯有的含义

 

3.其他一些常用的操作:

s.insert(pos,s2)

s下标为pos的元素前插入string类型s2

s.substr(pos,len)

返回一个string类型,它包含s中下标为pos起的len个字符

s.erase(pos,len)

删除s中下标为pos开始的len个字符

s.replace(pos,len,s2)

删除s中下标为poslen个字符,并在下标为pos处插入s2

s.find(s2,pos)

s中以pos位置起查找s2第一次出现的位置

s.c_str()

返回一个与s字面值相同的C风格的字符串临时指针

4.字符串转整数:

  字符串转整数,如果是字符数组,可以直接用atoi(s1)返回一个int型,atol(s1)返回long型,atof等等。

但是如果碰见string类型的,就必须要用s.c_str()了。s.c_str()是返回一个字符串数组的指针,就像我们平时定义的char s[10]那样。但是注意一旦string类型的发生改变,s.c_str()的也会随着改变,所以若想保存应该使用strcpy函数提前保存。ps:atoi可以忽略前导0,很方便。

#include<cstdio>
#include<cstring>
#include<iostream>
#include <bits/stdc++.h>
using namespace std;
int main() {
    char s1[10] = "0000123.4";string s2 = "3456";
    float a,b;
		
    a = atof(s1);
    b = atoi(s2.c_str());
	cout<<a+b<<endl;
	return 0;
}

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值