C++ primer 8.3.2节练习(有关ostringstream清空的问题)

这篇博客探讨了C++中ostringstream的清空问题,指出正确做法应该是直接调用ostringstream的clear()方法,而不是使用ostringstream.str().clear(),因为后者只会清空内容的拷贝,而非对象本身。博客内容涉及电话本输入输出处理和错误电话号码的检测与格式化。
摘要由CSDN通过智能技术生成

8.13

输入:电话本

输出:检测后并格式化后的电话本,输出错误电话号码

#include <iostream>  
#include <fstream>
#include <sstream>
#include <string>

using namespace std;

bool Valid(const string& i)
{
	return(i.size() == 9);
}

string& Format(string& i)
{
	for (auto j = i.begin() + 2; j != i.begin() + 7; j++)
		*j = '*';
	return i;
}
int main()
{
	ifstream input("F:\\test\\input1.txt");//打开文档,string中有'\'应用转义双写
	ofstream output("F:\\test\\output.txt",ofstream::app);//模式是追加(隐含out模式)
	//上句也可以写为output("...",ofstream::app|ofstream::out);
	string line,Name,phoneNum;
	istringstream record;
	ostringstream badNums, formatted;
	while (getline(input,line))   
	{
		record.clear();
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值