C语言按照逗号分割字符串!!!按照逗号,句号,或者其他字符分割都可以!!!

本文介绍了一个使用C++从字符串中读取整数,并将其存储到向量中的方法。通过istringstream类,实现了字符串流的转换,能够忽略非数字字符,仅提取整数值。此代码适用于需要从复杂文本中抽取数字数据的场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#include<iostream>
#include<vector>
#include<sstream>

using namespace std;
int main()
{
    string s;
    vector<int> v;
    cin >> s;
    //将读入的字符串转化成is流
    istringstream is(s);
    int inter;
    char ch;
    while (is >> inter)//只能读出is流中的一个整形读进inter
    {
         v.push_back(inter);
         is >> ch;//然后读一个字符型读进ch
    }
    for(int i=0;i<v.size();i++)
        cout<<v[i]<<" ";
    cout<<endl;
    return 0;
}

输入123,456,789,147,258,369
输出123 456 789 147 258 369

输入123a456b789c
输出123 456 789

输入123,456.789a147
输出123 456 789 147

输入123 456 789
输出123
解释:因为s读取的时候碰到123就停止了,所以s实际上只是123,相应的is流也是123,故读取进向量vertor中的也只有123

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值