C++ istringstream类学习

istringstream类用于执行C++风格的串流的输入操作;

ostringstream类用于执行C风格的串流的输出操作;

strstream类同时可以支持C风格的串流的输入输出操作;

istringstream的构造函数原形如下:

    istringstream::istringstream(string str);

它的作用是从string对象str中读取字符。

示例,

#include  
#include        //istringstream 必须包含这个头文件
#include  

using namespace std;  

int main()  
{  
    string str1="I am a baby";  
    istringstream is(str1);  
    string s;  
    while(is>>s)  
    {  
        cout<

C++ istringstream类学习_第1张图片 

 


C++默认通过空格(或回车)来分割字符串输入,即区分不同的字符串输入;但是有时候,我们得到的字符串是用逗号来分割的,给使用带来不便;
解决方法,
第一步:接收字符串 s ;
第二步:遍历字符串 s ,把 s 中的逗号换成空格;
第三步:通过 istringstream 类重新读取字符串 s ;

#include 
#include 
#include 

using namespace std;

int main(){
	string s = "I,am,a,little,baby";
	int n = s.size();
	for (int i = 0; i < n; ++i){
		if (s[i] == ','){
			s[i] = ' ';
		}
	}
	istringstream out(s);
	string str;
	while (out >> str){
		cout << str <<' ';
	}
	cout << endl;
}

C++ istringstream类学习_第2张图片

你可能感兴趣的:(VC++,C++,istringstream)