Вопрос о строках - PullRequest
       1

Вопрос о строках

0 голосов
/ 21 августа 2011

Я пытаюсь сделать так, чтобы моя программа провела проверку на неправильный ввод данных пользователем.

В этом случае мне нужны только цифры.(Без алфавита и т. Д.)

if (someStringHere.find_first_not_of("0123456789") == string::npos)

Правильно ли говорить, что этот фрагмент кода даст мне реализацию для этого?

Исходя из моих знаний, это возвращает true если строка состоит только из цифр, и false, если она находит что-то отличное от цифр от 0-9.

1 Ответ

0 голосов
/ 21 августа 2011

Ваша реализация выглядит хорошо для меня.

Следующее не является исчерпывающим тестовым примером, но этого достаточно, чтобы доказать точку зрения, учитывая, что, откровенно говоря, очевидно, что ваш подход хорош (при условии ввода ASCII).

<tomalak> geordi << isAllNums("12345"), isAllNums("a3234e"), isAllNums("abcdef"); bool isAllNums(const std::string& str) { return str.find_first_not_of("0123456789") == string::npos; }
<geordi> true, false, false

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...