字符串处理 读入及输出

这一篇博文对于很多人来说可能是基础知识,但对于一些人(包括我,及许多从Pascal转来的OIER)来说,C++字符串处理是比较麻烦的。鉴于此,我把它放在“字符串”这个专题里而不是“入门知识”。

麻烦主要是来源于C++字符串处理操作的多样性,有很多方法可以处理。另外,字符数组的操作也很容易和字符串的弄混。这里给出一些对于字符串比较简单的操作。

 

输入:

#include<iostream>

string s;

如要整行读入:getline(cin,s);

如要读入至空格或换行停止:cin>>s;

比如:

1 2 3

cin结果:1;getline结果:1 2 3;

 

输出:

#include<iostream>

string s="123";

cout<<s;

这个就没什么好说的了吧。。

*当然,输入输出也有scanf,printf的方法,但我感觉这种最为简便。

 

删除:

string s="123";

s.erase(1,1);

其实就是 字符串变量名.erase(删除的起始位置,删除长度) ,注意C++中字符串位置从0开始。

比如上述操作后s变为"13"。

 

替换:

string s="123";

s.replace(1,2,"sss");

格式:字符串变量名.replace(替换的起始位置,替换长度,替换的字符串);

可以理解为先删除后插入,如上述操作先删除从"2"开始的两个字符,即“23”,后插入“sss”,替换后s为"1sss"。

 

求长度:

string s="123";

int len=s.size();

格式:字符串变量名.size(),与上述操作不同,它返回一个具体的数值;

例如:上述操作后len==3,为s字符串的长度。

 

当然,上述这些操作不一定是最高效的,但我认为是相对简单易操作的。对于新手,或者说不想被搞混淆的同学来说,可以参考一下。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值