Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
nikitako19
0 / 0 / 0
Регистрация: 20.09.2015
Сообщений: 6
#1

Функция scanf - параметры для фильтрации введенных данных

26.09.2015, 11:17. Просмотров 582. Ответов 5
Метки нет (Все метки)

Проблема с scanf, что нужно добавить в параметр формат, что бы она считывала кроме этого"%[іІ,їЇ, ,а-я,А-я,a-z,A-Z,0-9]s" еще и все символы типа таких: "!"№;::?(_()^%$(&*("
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 
int main()
{
    //Ввод/вывод cout|cin
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    string str;
    cout << "Введіть строку: ";
    getline( cin, str );
    cout << "[COUT | CIN] " << str << "\n";
    //Ввод/вывод printf|scanf
    string  s;
    printf("%s","Введіть строку:");
    scanf("%[іІ,їЇ, ,а-я,А-я,a-z,A-Z,0-9]s",s);
    printf( "[SCANF | PRINTF] %s\n", s);
    system("PAUSE");
    return(0);
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.09.2015, 11:17
Ответы с готовыми решениями:

Функция scanf + проверка на ввод данных
Как я понимаю: использовать scanf + массив для проверки на корректность ввода -...

C - Функция scanf()
И снова я.Заранее прошу прощения за такие глупые,возможно,вопросы,но всё же..:...

Не определяется функция scanf
Привет!) У меня такая проблема.... не хочет считывать строки(( уже все...

Функция scanf не работает
Возникает проблема, что функция scanf не работает. Скрин: Можно как-нить...

Функция scanf() не работает
Здравствуйте, помогите решить проблему с функцией scanf(); Она не принимает...

5
CoderHuligan
801 / 477 / 199
Регистрация: 30.06.2015
Сообщений: 2,579
Записей в блоге: 4
26.09.2015, 15:07 #2
Кавычку надо писать со обратным слэшем:
C
1
[!;:?()_^%$*\"]
так у меня всё работает. Правда в си, без плюсов.
0
zss
Модератор
Эксперт С++
7096 / 6627 / 4196
Регистрация: 18.12.2011
Сообщений: 17,473
Завершенные тесты: 1
26.09.2015, 17:48 #3
Цитата Сообщение от CoderHuligan Посмотреть сообщение
так у меня всё работает
Не может это работать: в Си нет string
0
CoderHuligan
801 / 477 / 199
Регистрация: 30.06.2015
Сообщений: 2,579
Записей в блоге: 4
26.09.2015, 18:19 #4
Цитата Сообщение от zss Посмотреть сообщение
Не может это работать: в Си нет string
Так речь здесь идёт о форматном вводе с помощью функции scanf, и string здесь ни при чём.
C
1
scanf("%[!№;:?()_^%$*\"]s",a);
Ложить символы можно в char(в си) или в string как в си++, без разницы

Добавлено через 16 минут
Речь идёт о работе самой функции, безотносительно языка, я так понял.
0
easybudda
Модератор
Эксперт CЭксперт С++
10054 / 5974 / 1493
Регистрация: 25.07.2009
Сообщений: 11,320
26.09.2015, 18:26 #5
Цитата Сообщение от nikitako19 Посмотреть сообщение
добавить в параметр формат, что бы она считывала кроме этого"%[іІ,їЇ, ,а-я,А-я,a-z,A-Z,0-9]s" еще и все символы типа таких: "!"№;::?(_()^%$(&*("
У меня у одного чувство, что проще указать, какие символы не должны читаться?
0
CoderHuligan
801 / 477 / 199
Регистрация: 30.06.2015
Сообщений: 2,579
Записей в блоге: 4
26.09.2015, 18:34 #6
Цитата Сообщение от easybudda Посмотреть сообщение
У меня у одного чувство, что проще указать, какие символы не должны читаться?

Но, хозяин - барин...
0
26.09.2015, 18:34
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.09.2015, 18:34

Функция ввода с клавиатуры scanf
Здравствуйте. WinXP, MS VS20005 В приведенном коде BBB независимо от...

Функция scanf(), не считывает данные
Вот перед вами кусок кода, это функция которая возвращает true или false ...

Чтение вещественного числа, функция scanf
Здравствуйте! Только начал знакомство с этим замечательным языком. Возникла...


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

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

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