stringstream函数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了stringstream函数相关的知识,希望对你有一定的参考价值。

stringstream函数

头文件  #include<sstream>

stringstream是字符串流,被用来切分数据或转化类型

样例一(摘)

输入n,代表接下来输入n行资料,每行资料有不固定个数的整数(最多20个,不大于200个字元)。输出每行的总数

输入:

3 1 2 3 20 17 23 54 77 60 111 222 333 444 555 666 777 888 999

输出:

6

251

4995

 

代码

#include<iostream>
#include<string>
#include<sstream>
using namespace std;
int main()
{
string s;
stringstream ss;
int n, i, sum, a;
cin >> n;
getline(cin, s);           //读取换行
for (i=0; i<n; i++){
    getline(cin, s);
    ss.clear();             //清空
    ss.str(s);            //用str()将指定字串s设为开始的内容
    sum=0;
    while (1)
    {
        ss >> a;
        if ( ss.fail() ) break;
        sum+=a;
    }
    cout << sum << endl;
}
//system("pause");
return 0;
}

 

 

样例二(摘)

基本数据类型转换例子 int转string

#include <string>
 #include <sstream>
 #include <iostream> 
using namespace std;
 int main()
 {
    stringstream ss;
     string result;
     int i = 1000;
     ss << i;             //将int输入流
    ss >> result;           //从stream中抽取前面插入的int值
    cout << result << endl;    // print the string "1000"
    //system("pause");
    return 0;
 } 

 

 

样例三(摘)

int转换为char *

 

#include <sstream>
 #include <iostream> 
using namespace std;
 int main()
 {
     stringstream ss;
     char result[8] ;
     ss << 8888;                   //向stream中插入8888
     ss>> result;                   //抽取stream中的值到result
     cout << result <<endl;          // 屏幕显示 "8888"
    //system("pause");
    return 0;
 } 

 

样例四(摘)

多次转换时必须调用成员函数clear()

#include <sstream>
 #include <iostream> 
using namespace std;
 int main()
 {
    stringstream ss;
     int first, second;
     ss<< "123456";                 //插入字符串
    ss >> first;                //转换成int
     cout << first <<endl;
     ss.clear();                 //在进行多次转换前,必须清除stream
     ss<< false;                 //插入bool值
    ss>> second;                //提取出int
    cout << second <<endl;
    //system("pause");
    return 0;
 } 

 

以上是关于stringstream函数的主要内容,如果未能解决你的问题,请参考以下文章

stringstream的用法

istringstreamostringstreamstringstream 类介绍 和 stringstream类 clear函数的真正用途

在构造函数初始化列表中初始化 stringstream 引用成员,没有任何内容

stringstream,ostringstream,stringstream

sstream头文件-getline 函数 和 stringstream函数 和string的常见用法

详解C++标准库<sstream>中的类stringstream,并利用它实现OpenCV下的图片批量读取