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

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

Войти
Регистрация
Восстановить пароль
 
ZubSam
13 / 13 / 1
Регистрация: 24.03.2012
Сообщений: 238
#1

Из Char в Double - C++

07.02.2013, 11:34. Просмотров 1179. Ответов 6
Метки нет (Все метки)

Здравствуйте, не подскажет ли кто , как можно массив char переделать в double
Например:
char[4]={'0' , ',' , '5555'}
double x=0.0;
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.02.2013, 11:34
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Из Char в Double (C++):

Ошибки error C2296: -: недопустимо, левый операнд имеет тип "double (__cdecl *)(double,double,double - C++
Думаю из-за polp #include<iostream> #include<cmath> #include<cstdlib> using namespace std; double polp(double af,double...

char в double - C++
Как превратить char в double? Я хочу написать программу в которой вводится два числа и в результате выводится число типа double. Думал...

Конструктор double to char - C++
этот конструктор делает double to char. код просто ужасный. как лучше написать? параметры (число,точность) MyString::MyString(double...

long double и char - C++
Товарищи, помогите чайнику разобраться в данном теоретическом вопросе: long double* m=95; m--; m=? char* t=2; t-=4; t=?

Преобразования char в double - C++
Здравствуйте, я использую visual studio 15 и при компиляции следующего кода выводиться ошибка преобразования: #include "stdafx.h" ...

Реализация double to char* - C++
Здравствуйте, помогите пожалуйста с реализацией функции double to char*. У функции 2 аргумента char*(размер этого массива больше, либо...

6
StasGamilton
Эксперт по пяченькам
67 / 67 / 1
Регистрация: 16.08.2011
Сообщений: 258
07.02.2013, 12:12 #2
С помощью функции atof:
C++
1
double atof ( const char * str );
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
 
int main() {
   
   char m[4]={'0' , '.' , '5555'};
   double x=0.0; 
   
   x = atof(m);
   
   std::cout  << x << "\n";
}
Только целая часть должна отделяться от дробной точкой, а не запятой.

Добавлено через 7 минут
И еще char должен состоять из одного символа ('\0', '\n' и т.д. - в итоге дают один символ, также как и 'a'). Запись '5555' у меня считывает как просто '5'.
2
ZubSam
13 / 13 / 1
Регистрация: 24.03.2012
Сообщений: 238
07.02.2013, 12:30  [ТС] #3
Цитата Сообщение от StasGamilton Посмотреть сообщение
С помощью функции atof:
Спасибо) а как теперь сделать наоборот из double в char ?)
0
StasGamilton
Эксперт по пяченькам
67 / 67 / 1
Регистрация: 16.08.2011
Сообщений: 258
07.02.2013, 12:53 #4
С лету могу дать громоздкий и не очень хороший (ИМХО) способ с помощью stringstream:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <sstream>    // подключаем stringstream
 
int main() {
   
   char* m;
   double x = 5.34;
   
   std::stringstream streamData;    // переменная потока
   
   streamData << x;   // записываем в поток double
   
   m = (char*)streamData.str().c_str(); // Сначала переводим в std::string, потом из него const char*, который приводим к char*
   
   std::cout << m << std::endl;
   
   
   return 0;
}
0
Kuzia domovenok
1891 / 1746 / 118
Регистрация: 25.03.2012
Сообщений: 5,926
Записей в блоге: 1
07.02.2013, 15:01 #5
Цитата Сообщение от StasGamilton Посмотреть сообщение
char m[4]={'0' , '.' , '5555'};
Это не массив char
Цитата Сообщение от ZubSam Посмотреть сообщение
char[4]={'0' , ',' , '5555'}
Это не массив char
Цитата Сообщение от StasGamilton Посмотреть сообщение
И еще char должен состоять из одного символа
Ой! Уже заметили!
0
ZubSam
13 / 13 / 1
Регистрация: 24.03.2012
Сообщений: 238
07.02.2013, 15:02  [ТС] #6
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
Это не массив char
а что тогда?)
0
Kuzia domovenok
1891 / 1746 / 118
Регистрация: 25.03.2012
Сообщений: 5,926
Записей в блоге: 1
07.02.2013, 15:03 #7
Цитата Сообщение от ZubSam Посмотреть сообщение
а что тогда?)
Понятия не имею. Попробуй скомпилировать.
char m[4]; Объявляет массив из 4х char
А инициализируется этот массив каким-то бредом.
C++
1
char[4]={'0' , ',' , '5555'};
Вроде не строками - строки в двойных кавычках,
Вроде не char'ами- константы char состоят из одного символа ASCII
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.02.2013, 15:03
Привет! Вот еще темы с ответами:

Перевод из double в char - C++
Добрый день !!! подскажите как перевести из double в char .

Перевод double в char - C++
Необходимо перевести число типa double, к примеру а=0.1234 В char... Все это необходимо реализовать с С++ Гуглил, искал... Попадал...

Преобразование из char в double - C++
Как обычно зашел задать тупой вопрос: плз., скажите как из char сделать double если double(переменная) вызывает ошибку.. Да,...

Перевод int и double в char* - C++
Возникла следующая проблема. Нужно сделать: //Реализовать класс var - «Универсальная переменная». Объекты экземпляры этого класса...


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

Или воспользуйтесь поиском по форуму:
7
Yandex
Объявления
07.02.2013, 15:03
Ответ Создать тему
Опции темы

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