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

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

Войти
Регистрация
Восстановить пароль
 
Selat
1 / 1 / 0
Регистрация: 25.12.2012
Сообщений: 32
#1

Странное поведение cin - C++

04.01.2014, 14:58. Просмотров 251. Ответов 2
Метки нет (Все метки)

Перегружаю оператор ввода следующим образом:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
 
using namespace std;
 
class Vector2D
{
public:
    long double x, y;
};
 
istream& operator>>(istream& in, Vector2D& v)
{
    in >> v.x >> v.y;
    cout << v.x << " " << v.y << endl;
    return in;
}
 
int main()
{
    Vector2D p1, p2, p3, p4;
    cin >> p1;
    return 0;
}
Все типы, кроме long double вводятся отлично. Но с long double вводятся всегда нули. Компилирую с помощью mingw32-g++. Подскажите пожалуйста, как это исправить?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.01.2014, 14:58
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Странное поведение cin (C++):

Странное поведение cin - C++
Есть класс, в нем есть два текстовых private члена, friend-оператор&gt;&gt; и friend-функция getline для записи в эти члены. Но когда в main.cpp...

Странное поведение операции XOR и std::cin - C++
Объясните, пожалуйста, почему этот код работает правильно: /* Обмен значений двух переменных без использования дополнительной переменной...

Интересное поведение cin.getline(); - C++
Доброго времени суток! Я не устаю терроризировать форум своими тупыми вопросами, но для этого он и создан. На этот раз у меня проблема с...

Странное поведение - C++
Здравствуйте еще раз :) Теперь возникла другая непонятка. Есть класс StringParser, объекты которого умеют разбивать строку на подстроки,...

Странное поведение new - C++
Объясните почему оператор new выделяет неверное количество памяти? # include &lt;iostream&gt; using namespace std; char* interpitator( int...

Странное поведение программы - C++
Здравствуйте, у меня проблема. В силу какой-то причины результатом вычисления выражения при значениях PA и PB равных 0 и 1 соответственно,...

2
AllLoveGames
1 / 1 / 0
Регистрация: 04.01.2014
Сообщений: 40
04.01.2014, 22:02 #2
хм... у меня на Dev-C++ все вроде нормально работает
0
Selat
1 / 1 / 0
Регистрация: 25.12.2012
Сообщений: 32
04.01.2014, 22:27  [ТС] #3
Компилирую mingw32-g++. Похоже, что cin в принципе отказывается вводить long double. Даже так ноль:
C++
1
2
3
    long double t;
    cin >> t;
    cout << t;
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.01.2014, 22:27
Привет! Вот еще темы с ответами:

Странное поведение кода - C++
int x; cout &lt;&lt; (x = 1) + (x = 2) + (x = 3); У меня выводит 7 (вместо 6). Почему?!?!

Странное поведение транслятора - C++
В следуюшем примере код компилируется нормально, но объект класса b не содается (пробывал на Visual studio 10 и на Borland builder 5), что...

Странное поведение компилятора - C++
Всем привет! Я конечно понимаю что нужно выкладывать минимальный код повторяющий мою проблему но он будет достаточно грамосток т.к. в...

Странное поведение wstring - C++
Всем привет! Ребята, не могу понять такую ситуацию. Вставляю в wstring строку в позицию 0 таким образом ...


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

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

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