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

Преобразование из string в double - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Найти вещественное число по числу, введенному с клавиатуры, и заменить его новым числом http://www.cyberforum.ru/cpp-beginners/thread1154788.html
Помогите решить задачу. Тип списка: двунаправленный Элемент списка: вещественное Найти вещественное число по числу, введенному с клавиатуры,и заменить его новым числом.
C++ Бинарное дерево поиска. После запуска не выводятся значения ключа #include <QCoreApplication> #include <iostream> #include <fstream> #include <string> #include <BinaryTree.h> using namespace std; int main() http://www.cyberforum.ru/cpp-beginners/thread1154785.html
Класс для работы с битовыми векторами C++
Створити клас Bitv для роботи з бітовими векторами довільної довжини. Бітовий вектор - послідовність значень, які можуть мати значення 0 (не істина) або 1 (істина). Кожен елемент бітового вектору повинен займати у пам’яті один біт. Для розміщення бітового вектора у пам’яті застосувати динамічний масив відповідного розміру. Тип елемента масиву - носія бітового вектора - беззнаковий, розміром 2...
Выдать N рублей минимальным набором купюр C++
В кассе имеются купюры достоинством в К рублей и в 1 рубль. Выдать N рублей минимальным набором купюр заданного достоинства.
C++ Проверить баланс скобок в тексте программы http://www.cyberforum.ru/cpp-beginners/thread1154758.html
Задача: Создать файл в котором есть программа бейсик. Проверить на соответствие открытые и закрытые скобки. Как отрыть файл и считать с него инфу - понятно, а вот как проверить сабж - неизвествно.. #include <iostream.h> #include <fstream> #include <conio.h> int main() {
C++ Зашифровать строчку RSA-1024 Добрый вечер. Есть строчка которую нужно зашифровать с пом RSA-1024. Суть алгоритма проста и понятна. Чтобы не плодить велосипеды решил попробовать различные готовые решения, но ничего к сожаелению не нашел. Подскажите пожалуйста, может есть библиотеки какие-то? Спасибо подробнее

Показать сообщение отдельно
AfftaRx
 Аватар для AfftaRx
0 / 0 / 0
Регистрация: 14.08.2013
Сообщений: 33
23.04.2014, 03:06     Преобразование из string в double
Объясните пожалуйста в чем связь между преобразованием данный из string в double и библиотекой русского языка
Вот так работает
Кликните здесь для просмотра всего текста
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#include "stdafx.h"
#include <iostream>
#include <cstdlib>
#include <string>
#include <fstream>
#include <locale>
using namespace std;
 struct tar{
    string Name;
    int cod;
    double cost;
    string inter;
    double sum;
};
void main()
{
//setlocale(LC_ALL,"Russian"); //!!!!!
int i;
tar tarif[10];
string temp;
ifstream rate;
rate.open("D:\\123.txt");
for (int i=0;i<5;i++)
{
    getline(rate,tarif[i].Name,',');
    getline(rate,temp,',');
    tarif[i].cod=atoi(temp.c_str());
    getline(rate,temp,',');
    cout << temp << "\n";
    tarif[i].cost=strtod(temp.c_str(),NULL); // преобразование из string в double
    cout << tarif[i].cost << "\n";
    getline(rate,tarif[i].inter);
}
cout << tarif[0].cost;
getchar();
}

А вот так выдает нули при преобразовании
Кликните здесь для просмотра всего текста
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#include "stdafx.h"
#include <iostream>
#include <cstdlib>
#include <string>
#include <fstream>
#include <locale>
using namespace std;
 struct tar{
    string Name;
    int cod;
    double cost;
    string inter;
    double sum;
};
void main()
{
setlocale(LC_ALL,"Russian"); //!!!!!!
int i;
tar tarif[10];
string temp;
ifstream rate;
rate.open("D:\\123.txt");
for (int i=0;i<5;i++)
{
    getline(rate,tarif[i].Name,',');
    getline(rate,temp,',');
    tarif[i].cod=atoi(temp.c_str());
    getline(rate,temp,',');
    cout << temp << "\n";
    tarif[i].cost=strtod(temp.c_str(),NULL); // преобразование из string в double
    cout << tarif[i].cost << "\n";
    getline(rate,tarif[i].inter);
}
cout << tarif[0].cost;
getchar();
}

сперва не мог понять в чем проблема и почему не преобразуется число из string в double, просидел над этой ошибкой часа 3-4, и в конце уже методом исключения обнаружил это....
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 07:17. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru