容易忽视的字符串操作

1. 讲输入的每行文本以空格分割为各字符串
#include <iostream>
#include <string>
#include <sstream>
using namespace std;
int main()
{
	string str;

	while(getline(cin,str))
	{
		stringstream ss(str);//构造函数初始化 不能用ss<< 会累加写入 
    	while(ss>>str)
			cout<<str<<" ";
		cout<<endl;		
    	
	}
 

	return 0;
}

2.string转int  //同时去掉前导0

	stringstream ss(str);//构造函数初始化 不能用ss<< 会累加写入 
   	int n;
	ss>>n;
	cout<<n; 
3.char a[]int
	char str[100];
	
	while(scanf("%s",str))
	{
		int a=atoi(str);
		cout<<a<<endl;
	}
4.string删除字符
erase(pos,n);
删除从pos开始的n个字符,比如erase(0,1)就是删除第一个字符

erase(position);
删除position处的一个字符(position是个string类型的迭代器)

erase(first,last);
删除从first到last之间的字符(first和last都是迭代器)
5.string插入字符
s.insert(0,”my name”);
s.insert(1,str);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值