Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
1 / 1 / 2
Регистрация: 25.12.2012
Сообщений: 32
1

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

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

Author24 — интернет-сервис помощи студентам
Перегружаю оператор ввода следующим образом:
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
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.01.2014, 14:58
Ответы с готовыми решениями:

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

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

Как работает cin.peek, cin,get, cin.ignore, cin.clear?
Здравствуйте, товарищи и не товарищи!:) Я только начал изучать C++, а уже использую вещи, которые...

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

2
1 / 1 / 0
Регистрация: 04.01.2014
Сообщений: 40
04.01.2014, 22:02 2
хм... у меня на Dev-C++ все вроде нормально работает
0
1 / 1 / 2
Регистрация: 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
04.01.2014, 22:27
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.01.2014, 22:27
Помогаю со студенческими работами здесь

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

Странное поведение new
Объясните почему оператор new выделяет неверное количество памяти? # include &lt;iostream&gt; using...

Объяснить поведение объекта std::cin в цикле while
#include&lt;iostream&gt; #include&lt;string&gt; #include&lt;cstdlib&gt; #include&lt;windows.h&gt; using namespace std;...

Странное поведение указателя
class XMLDocument { public: char *xml; XMLDocument() { }; void NewXML()


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru