Wątek przeniesiony 2015-01-14 10:27 z C/C++ przez ŁF.

Jak wczytać liczbę podawaną z przecinkiem?

2015-01-14 09:50
0

jak wczytac liczbe 3,5(liczba jest podawana z przecinkiem nie z kropka)

Tytuł wątku powinien w sposób sensowny i w miarę wyczerpujący opisywać Twój problem; Pamiętaj, że wątki z nic nie mówiącymi tytułami z reguły lądują w koszu; - furious programming 2015-01-14 11:59

Pozostało 580 znaków

2015-01-14 09:55

wczytaj to jako string pozniej zamien , na . i rzutuj na float/double

Pozostało 580 znaków

2015-01-14 10:18
2

Możesz też kombinować w ten sposób, polegający na budowaniu własnego locale:

#include <iostream>
#include <locale>
#include <fstream>
using namespace std;
class WithComma: public numpunct<char> // class for decimal numbers with comma
{
    protected: char do_decimal_point() const { return ','; } // override the function that gives the decimal separator
};
int main()
{
     locale myloc(  locale(),    // C++ default locale
                  new WithComma);// Own numeric facet
     double n;
     ifstream f("myfile.txt");
     f.imbue(myloc);

     while (!f.eof())
     {
          f >> n;
          cout << n << '\n';
     }
     return 0;
}

Źródło: http://www.cplusplus.com/forum/beginner/5657/

Pozostało 580 znaków

Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0