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

Проверка на ввод символа - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 18, средняя оценка - 4.89
Alt_Shift
 Аватар для Alt_Shift
50 / 50 / 2
Регистрация: 28.05.2012
Сообщений: 161
26.06.2012, 19:15     Проверка на ввод символа #1
Пользователь вводит несколько строк (имя, фамилия и тд). Не могу сообразить как реализовать проверку, на то что бы вводимые символы не являлись цифрами или знаками препинания. Кучу лесенок if с проверкой по аски коду? Но опять же в таблице аски вроде как проблема с русскими символами. Да и неудобно это.
Лучшие ответы (1)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Schizorb
 Аватар для Schizorb
508 / 460 / 16
Регистрация: 07.04.2012
Сообщений: 865
Записей в блоге: 1
Завершенные тесты: 1
26.06.2012, 19:24     Проверка на ввод символа #2
Есть же isalpha, только не знаю, корректно ли с русскими символами будет работать
Alt_Shift
 Аватар для Alt_Shift
50 / 50 / 2
Регистрация: 28.05.2012
Сообщений: 161
26.06.2012, 19:51  [ТС]     Проверка на ввод символа #3
Цитата Сообщение от Schizorb Посмотреть сообщение
Есть же isalpha, только не знаю, корректно ли с русскими символами будет работать
спасибо, хорошая функция. Правда работает только с латинскими буквами и цифрами. при попытке запихать туда русский символ или знак препинания- вылетает с ошибкой
soon
 Аватар для soon
2536 / 1301 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
26.06.2012, 19:58     Проверка на ввод символа #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
http://en.cppreference.com/w/cpp/locale/isalpha
Evg
Эксперт С++Автор FAQ
 Аватар для Evg
16821 / 5242 / 318
Регистрация: 30.03.2009
Сообщений: 14,118
Записей в блоге: 26
26.06.2012, 20:03     Проверка на ввод символа #5
Сделай сам себе функцию, которая состоит либо из кучи if'ов, либо из комбинаций islpha, ispunct и всего того, что тебе нужно
Invader_Zim
Twilight Parasite
 Аватар для Invader_Zim
153 / 149 / 2
Регистрация: 21.07.2011
Сообщений: 907
26.06.2012, 20:58     Проверка на ввод символа #6
C++
1
unsigned char
помощь! русские символы будут от 127 до 255. Я гарантирую это!
Evg
Эксперт С++Автор FAQ
 Аватар для Evg
16821 / 5242 / 318
Регистрация: 30.03.2009
Сообщений: 14,118
Записей в блоге: 26
26.06.2012, 21:03     Проверка на ввод символа #7
Цитата Сообщение от Invader_Zim Посмотреть сообщение
помощь! русские символы будут от 127 до 255. Я гарантирую это!
От 127 (на самом деле от 128, но не суть) до 255 - в этот диапазон попадает 127 символов. В русском языке с учётом регистра имеется 66 символов. Чуешь неувязочку?
Invader_Zim
Twilight Parasite
 Аватар для Invader_Zim
153 / 149 / 2
Регистрация: 21.07.2011
Сообщений: 907
26.06.2012, 21:09     Проверка на ввод символа #8
Evg, тогда кто мешает wchar_t юзать?
Evg
Эксперт С++Автор FAQ
 Аватар для Evg
16821 / 5242 / 318
Регистрация: 30.03.2009
Сообщений: 14,118
Записей в блоге: 26
26.06.2012, 21:10     Проверка на ввод символа #9
Цитата Сообщение от Invader_Zim Посмотреть сообщение
Evg, тогда кто мешает wchar_t юзать?
А что от этого изменится? Человек хочет наиболее простым образом проверить наличие недопустимых символов. Как твои замечания к этому относятся - хз
kazak
 Аватар для kazak
3029 / 2350 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
26.06.2012, 21:44     Проверка на ввод символа #10
Проще проверять на запрещенные символы, isdigit(), ispunct().
alexey31415
 Аватар для alexey31415
59 / 59 / 3
Регистрация: 16.05.2010
Сообщений: 632
26.06.2012, 22:48     Проверка на ввод символа #11
можно перед строкой написать L,я думаю isalpha с UNICODE дружит
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.06.2012, 10:42     Проверка на ввод символа
Еще ссылки по теме:

Проверка на ввод символа C++
пропускает ввод символа C++
Проверка на ввод символа C++

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

Или воспользуйтесь поиском по форуму:
kazak
 Аватар для kazak
3029 / 2350 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
27.06.2012, 10:42     Проверка на ввод символа #12
alexey31415, эта может и дружит http://cplusplus.com/reference/std/locale/isalpha/, а сишная сомнительно.
Yandex
Объявления
27.06.2012, 10:42     Проверка на ввод символа
Ответ Создать тему
Опции темы

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