ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Stringstream

2020-05-11 09:05:01  阅读:218  来源: 互联网

标签:putchar int void Stringstream write 这道题 stringstream


Stringstream

  • \(stringsteam\)用于进行数据类型转换,\(<sstream>\)库定义了三种类:\(istringstream\)、\(ostringstream\)和\(stringstream\),分别用来进行流的输入、输出和输入输出操作。
  • 接下来举一个栗子,通过这道题我们来介绍下从\(int\)转化为\(string\)的过程

Digits Sequence (Easy Edition)

  • 这道题是一道很水的题,我们通过这道题来介绍下\(streamstring\)
  • 我们可以考虑把每一个字符都压入\(s\),最后输出第\(n-1\)项即可
  • 接下来就是一点也不激动人心的代码了:
#include<bits/stdc++.h>//Forever_chen
#define RT register
using namespace std;
template<class t> inline t read(t &x){
	char c=getchar();bool f=0;x=0;
	while(!isdigit(c)) f|=c=='-',c=getchar();
	while(isdigit(c))x=(x<<1)+(x<<3)+(c^48),c=getchar();
	if(f)x=-x;return x;
}
template<class t>inline void write(t x){
	if(x<0)putchar('-'),write(-x);
	else{if(x>9)write(x/10);putchar('0'+x%10);}
}
template<class t>inline void writeln(t x){
	write(x);putchar('\n');
	return;
}
template<class t>inline void write_blank(t x){
	write(x);putchar(' ');
	return;
}
int n,k;
stringstream s; //定义一个stringstream类型的s
signed main(){
	//freopen(".in","r",stdin);
	//freopen(".out","w",stdout);
	read(n);
	for(int i=1;s.str().size()<=n;i++){//取长,和string类型相类似
		s<<i;//将int类型的i压入s
	}
	cout<<s.str()[n-1];//输出第n-1项
	//system("pause");
	return 0;
}

标签:putchar,int,void,Stringstream,write,这道题,stringstream
来源: https://www.cnblogs.com/Forever-chen/p/12866971.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有