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

Как запретить преобразование типов при использовании cin - C++

Восстановить пароль Регистрация
 
NetCoder
0 / 0 / 0
Регистрация: 24.05.2014
Сообщений: 14
19.11.2015, 22:05     Как запретить преобразование типов при использовании cin #1
Как запретить преобразование типов при использовании объекта потокового ввода cin. Проблема в том, что существует переменная типа int и со спецификатором unsigned, если при вызове cin ввести отрицательное число, то произойдет преобразование типа, как этого избежать?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.11.2015, 22:05     Как запретить преобразование типов при использовании cin
Посмотрите здесь:

C++ Как запретить компилятору неявное преобразование из числового типа в символьный?
C++ Почему портится поток cin при использовании функции getline
C++ Как осуществляется преобразование типов (для чего)?
C++ преобразование типов
преобразование типов C++
C++ Строковые потоки. Преобразование типов (как сделать чтобы из строки число полностью преобразовывалось в double без потери чисел)
C++ Преобразование типов - как строку чисел перевести в целочисленный массив ?
C++ Преобразование типов, как понять фразу из учебника

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Renji
1535 / 983 / 240
Регистрация: 05.06.2014
Сообщений: 2,963
19.11.2015, 22:27     Как запретить преобразование типов при использовании cin #2
Вот так что выдает (codepad успешно ловит -1 и пишет о ошибке)?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include<sstream>
using namespace std;
 
int main() {
    stringstream stream("-1");
    unsigned int x=0;
    stream>>x;
    if(stream)
        cout<<x;
    else
        cout<<"error";
    return 0;
}
Yandex
Объявления
19.11.2015, 22:27     Как запретить преобразование типов при использовании cin
Ответ Создать тему
Опции темы

Текущее время: 17:44. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru