Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Console_Love
0 / 0 / 1
Регистрация: 17.01.2015
Сообщений: 25
#1

Как проверить, что пользователь ввел число в переменную string? - C++

07.04.2015, 16:33. Просмотров 816. Ответов 2
Метки нет (Все метки)

Скажите пожалуйста как проверить что пользователь ввел число в переменную string? И как его потом конвертировать в int ?
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.04.2015, 16:33
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Как проверить, что пользователь ввел число в переменную string? (C++):

Ввел ли пользователь число
Наверно, 300 раз задавали этот вопрос.Как узнать ввел число пользователь ?...

Проверка, ввел ли пользователь что-нибудь на клавиатуре?
Надо узнавать каждую 1/10 сек, ввел ли пользователь что-нибудь на клаве. В VC++...

Массив: Сколько раз пользователь ввел то или иное число?
Пользователь вводит количество чисел n, а потом вводит сами числа. Каждое из...

Как записать шестнадцатеричное число в переменную типа string?
Есть ф-ция, которая переводит целочисленный переменные или просто цифры в...

Как сделать так чтобы пользователь ввел TCHAR
Как сделать так чтобы пользователь ввел TCHAR ?

Как найти произведение цифр любого числа, которое ввел пользователь?
Всем добрый день! Можете помочь мне написать код на с++ в visual studio....

2
Renji
2142 / 1501 / 457
Регистрация: 05.06.2014
Сообщений: 4,339
07.04.2015, 16:46 #2
Лучший ответ Сообщение было отмечено Console_Love как решение

Решение

C++
1
2
3
4
5
6
7
8
9
string str="1234b";
size_t check;
try
{
    int res=stoi(str,&check);
    cout<<(check==str.size()?"вышло":"не вышло")<<endl;
}
catch(const invalid_argument&){cout<<"какая-то НЕХ на входе"<<endl;}
catch(const out_of_range&){cout<<"число в int не влезает"<<endl;}
0
MicM
824 / 483 / 324
Регистрация: 29.12.2009
Сообщений: 1,106
Завершенные тесты: 1
07.04.2015, 16:50 #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <string>
#include <boost/lexical_cast.hpp>
 
int main()
{
    std::string str;
    std::getline (std::cin, str);
    try
    {
        std::cout << "Number: "
                  << boost::lexical_cast<int> (str) << std::endl;
    }
    catch (const boost::bad_lexical_cast & error)
    {
        std::cout << error.what() << std::endl;
    }
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.04.2015, 16:50
Привет! Вот еще темы с решениями:

Вот часть кода, в нем я должен сделать если я ничего не ввожу то чтоб вывело сообщение о том что пользователь не ввел данных, но у меня не выходит
void Magazine::Input() { system(&quot;cls&quot;);...

Как проверить есть ли в string что нибудь ?
Как проверить есть ли в string что нибудь ? Например функция для проверки...

Пользователь вводит с клавиатуры две границы диапазона и число. Проверить, попадает ли число в диапазон
Пользователь вводит с клавиатуры две границы диапазона и число. Если число не...

Как преобразовать char* в string и вывести переменную string на экран?
for (int k = 0; k &lt; 10; k++) { int x = (int)rand() / RAND_MAX + rand() %...


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

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

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