Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 143, средняя оценка - 4.62
limelight
8 / 8 / 0
Регистрация: 17.04.2010
Сообщений: 112
#1

Преобразовать double в string - C++

29.05.2010, 00:10. Просмотров 22853. Ответов 9
Метки нет (Все метки)

Подскажите как преобразовать double в string ??

Нашел что то похожее при помощи ostringstream , но там не совсем то..

Преобразование string в double реализовал следующим образом:

C++
1
    double val  = atof(stroka.c_str());
, где stroka - объект класса string. Правильно?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.05.2010, 00:10
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Преобразовать double в string (C++):

Преобразовать string^ в double - C++
Есть старая программа на c++, написанная в среде MS VS2010 с использование WinForm, и, как следствие .Net Появилась проблема с...

C++: как преобразовать double в string? - C++
Например, вычисляем значение 22/7 с точностью до 10 знаков после запятой: #include <iostream> #include <windows.h> using namespace...

Как преобразовать тип double в string - C++
Есть переменная типа double нужно ее преобразовать в тип string Как это можно сделать наиболее простым способом используя стандартные...

Как преобразовать string в double и обратно? - C++
нашел функцию atof но не хочет запускаться. сам начеркал функцию для перевода в double но обратно чет даже идей нет.

Error C2440: =: невозможно преобразовать 'std::string' в 'double' - C++
>c:\users\nreshetova\documents\visual studio 2008\projects\sort3d1\sort3d1\sort3d1.cpp(73) : error C2440: =: невозможно преобразовать...

Error C2664: std::vector<_Ty>::push: невозможно преобразовать параметр 1 из 'double' в 'const std::string &' - C++
#include &lt;iostream&gt; #include &lt;stack&gt; #include &lt;sstream&gt; #include &lt;string&gt; using namespace std; int main() { string...

9
НеПродюссер
32 / 20 / 3
Регистрация: 05.03.2010
Сообщений: 51
29.05.2010, 00:13 #2
если решил из double в string, тогда по логике функция будет называться ftoa(stroka, ());

и переменную объяви от греха подальше как float val =)
0
limelight
8 / 8 / 0
Регистрация: 17.04.2010
Сообщений: 112
29.05.2010, 00:22  [ТС] #3
мда.
переменная у меня объявлена правильно. а функции, что вы привели для примера, не существует.
0
easybudda
Модератор
Эксперт CЭксперт С++
10020 / 5943 / 1004
Регистрация: 25.07.2009
Сообщений: 11,230
29.05.2010, 00:26 #4
Цитата Сообщение от limelight Посмотреть сообщение
Нашел что то похожее при помощи ostringstream , но там не совсем то..
В каком смысле?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <sstream>
    
int main(){
    double d;
    
    std::cout << "Double value: ";
    std::cin >> d;
    std::ostringstream ost;
    ost << d;
    std::cout << "As string: " << ost.str() << std::endl;
    
    return 0;
}
2
rangerx
1941 / 1550 / 141
Регистрация: 31.05.2009
Сообщений: 2,913
29.05.2010, 00:28 #5
std::istringstream(stroka) >> val;
0
limelight
8 / 8 / 0
Регистрация: 17.04.2010
Сообщений: 112
29.05.2010, 00:59  [ТС] #6
easybudda, спасибо! Где можно подробно почитать по поводу потоков чтобы как следует разобраться в этом?
0
easybudda
Модератор
Эксперт CЭксперт С++
10020 / 5943 / 1004
Регистрация: 25.07.2009
Сообщений: 11,230
29.05.2010, 01:07 #7
Цитата Сообщение от limelight Посмотреть сообщение
Где можно подробно почитать по поводу потоков чтобы как следует разобраться в этом?
Вот тут например. Хотелось бы подробнее, да некуда! Правда, не по-русски...
0
Alex_Skripa
18 / 18 / 1
Регистрация: 16.09.2013
Сообщений: 126
23.10.2013, 17:52 #8
Вот написал как вы посоветовали...
C++
1
2
3
4
5
6
7
8
string IntToStr(double Val)
{      
    string result;
    std::ostringstream ost;
    ost << Val;
    result = ost.str();
    return result;
}
Работает! Но есть одно но почему то возвращает только 8 знаков не больше подскажите пожалуйста как исправить.
0
I.M.
566 / 549 / 5
Регистрация: 16.12.2011
Сообщений: 1,389
23.10.2013, 18:10 #9
std::to_string
http://en.cppreference.com/w/cpp/string/basic_string/to_string
0
easybudda
Модератор
Эксперт CЭксперт С++
10020 / 5943 / 1004
Регистрация: 25.07.2009
Сообщений: 11,230
23.10.2013, 18:10 #10
Цитата Сообщение от Alex_Skripa Посмотреть сообщение
Но есть одно но почему то возвращает только 8 знаков не больше подскажите пожалуйста как исправить.
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
#include <sstream>
#include <iomanip>
 
int main() {
    std::ostringstream ost;
    ost << std::fixed << std::setprecision(20) << ( 22.0 / 7.0 );
    std::cout << ost.str() << std::endl;
    return 0;
}
3
23.10.2013, 18:10
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.10.2013, 18:10
Привет! Вот еще темы с ответами:

Преобразовать 2 числа int в 1 число float(double) | double int1.int2 - C++
Всем привет. Изучая азы C++, столкнулся с такой проблемой. Есть два значения типа int, их необходимо преобразовать в одно значение типа...

Ошибка: невозможно преобразовать 'double' в 'double' - C++
Задача алгоритма, мы вводим матрицу А и В матрицу А раскладываем в LU разложение и с его помощью находим обратную матрицу, а после находим...

Как преобразовать char* в string и вывести переменную string на экран? - C++
for (int k = 0; k &lt; 10; k++) { int x = (int)rand() / RAND_MAX + rand() % 6 + 2; char *chars = new char; ...

C2440 "Невозможно преобразовать double в double" - C++
// ConsoleApplication3.cpp: определяет точку входа для консольного приложения. // #include &quot;stdafx.h&quot; #include &lt;iostream&gt; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru