C&C++   发布时间:2022-04-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了逗号在C中分隔浮动大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图分开一个数字列表,如:34,45,12.3,100,34.6,50

我只能在没有这样的小数的情况下才能这样做:

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

int main()
{
    std::string str = "34,50";
    std::vector<int> vect;

    std::stringstream ss(str);

    int i;

    while (ss >> i)
    {
        vect.push_BACk(i);

        if (ss.peek() == ',')
            ss.ignore();
    }

    for (i=0; i< vect.size(); i++)
        std::cout << vect.at(i)<<std::endl;

}

这里的问题是小数.以上将产生:

34 45 12 3 100 34 6 50

它应该产生:

34 45 12.3 100 34.6 50

基本上是上面的代码,当它看到一个点’.’它就好像是一个逗号.

有任何想法吗?

解决方法

我认为你的代码将12.3解释为两个不同的数字,因为你没有将这个数字声明为浮点数.向量将所有字符串保存为整数,而不是浮点数.如果您将向量声明为浮点数而不是整数,那么您的问题应该得到解决

大佬总结

以上是大佬教程为你收集整理的逗号在C中分隔浮动全部内容,希望文章能够帮你解决逗号在C中分隔浮动所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。