牛客网输入输出练习,stringstream

string

getline(cin,str)
getline(cin,str); 处理后还留有结束符在输入流中,故需要使用cin.get();
接受最后一个结束符,才能接受后面得输入值。两个函数返回值都会丢弃换行符。

getline(cin,str)的读取原理是将以‘\n’ 为结束符完整读取的一行,’\n’回车,所以当之前用cin读取一个字符串的时候

输入函数getline(cin,str) 与cin.getline(str,int)的区别[C/C++]

#include<bits/stdc++.h>
using namespace std;
int main() {
    string str;
    vector<string> v;
    while (getline(cin, str)) {
        stringstream ss(str);   //定义流对象 复制str到ss
        while (getline(ss, str, ',')) {  //分隔符, 从流ss中取字符到str
            v.push_back(str);
        }
        sort(v.begin(), v.end());   
        for (int i = 0; i < v.size() - 1; i++) {
            cout << v[i] << ',';  
        }
        cout <<v[v.size()-1]<<endl; //这样分出来写为了不输出,
        v.clear();  //清除vector所有元素
    }
    return 0;
}

https://blog.csdn.net/oil_you/article/details/88536374

添加链接描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值