Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Функция stod() не работает. C++

Alan Gmyzin Ученик (243), закрыт 2 года назад
Привет всем. Я хотел написать код для калькулятора, но это не важно, ближе к делу.
Я создал переменную строку, и вторую double, и хотел конвертировать строку в дробное и присвоить второй переменной, используя stod(), но она почему то выдает ошибку: 'stod' was not declared in this scope. я смотрел в интернете, говорили инклюдить <cstring>, делал, не помогало, пытался stof и stold вместо stod использовать, ошибка та же. Если нужен код, могу показать.
P.S. писал код в dev c++, может с ним что то не так ? Прошу не отвечать спамеров которые пишут "это хороший вопрос" или "не знаю", которые просто фармят баллы.
Лучший ответ
Федор Новиков Искусственный Интеллект (368886) 3 года назад
поищи функцию stod во всех файлах в каталоге include
Alan GmyzinУченик (243) 3 года назад
как то не понял ?. Я просто недавно начал учить c++, и не разбираюсь вообще. Можете подробнее обьяснить, пожалуйста?
Федор Новиков Искусственный Интеллект (368886) Alan Gmyzin, в среде разработки должен быть каталог include или inc (смотри в настройках среды или проекта), в нем лежат все системные подключаемые файлы. В каком-то из них и может быть объявлена функция stod, его надо будет подключить к исходному тексту.
Остальные ответы
Николай Веселуха Высший разум (386154) 3 года назад
Всё работает как надо. Возможно у вас не всё в порядке с созданием проекта либо отсутствуют нужные библиотеки, либо не подключено пространство имён std::
Krab Bark Искусственный Интеллект (301584) 3 года назад
Dev-C++:

#include "iostream"
#include "string"
using namespace std;
int main (){string s="12.34 56.78"; size_t sz;
double a=stod(s,&sz),b=stod(s.substr(sz)); cout<<a<<'\n'<<b;}
Demon On Wheels Просветленный (31373) 3 года назад
вот мой рабочий strtod
https://pastebin.com/Y81puTXT

stod() это обёртка к strtod

вызывать так
double d = strtod(str.c_str(), 0);
Похожие вопросы