powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / ДОСовская C++
7 сообщений из 7, страница 1 из 1
ДОСовская C++
    #34257129
Sarr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ДОСовская C++
Подскажите пожалуйста, как сделать проверку на введённый символ?
Если ввести вместо числа букву, программа "виснет".
:(
...
Рейтинг: 0 / 0
ДОСовская C++
    #34257137
Тынц.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ctype.h

isdigit, isascii и т.д.
...
Рейтинг: 0 / 0
ДОСовская C++
    #34258269
Sarr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Можно немного подробней?
Хотя бы синтаксис для наглядности.
...
Рейтинг: 0 / 0
ДОСовская C++
    #34258305
Тынц.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В справке и синиаксис есть и примеры... не ленитесь смотреть
...
Рейтинг: 0 / 0
ДОСовская C++
    #34258338
Akh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор
#include <ctype.h>

int isalnum(int c);
int isalpha(int c);
int isascii(int c);
int isblank(int c);
int iscntrl(int c);
int isdigit(int c);
int isgraph(int c);
int islower(int c);
int isprint(int c);
int ispunct(int c);
int isspace(int c);
int isupper(int c);
int isxdigit(int c);

ОПИСАНИЕ
Данные функции проверяют, попадает ли символ c (который должен иметь значение unsigned char или EOF) в определенный кл
асс символов, существующих в текущем окружении.


isalnum()
проверяет символ на принадлежность к текстовым символам; вызов эквивалентен (isalpha(c) || isdigit(c)).

isalpha()
п р оверяет символ на принадлежность к алфавитным символам; в стандартном окружении "C" это эквивалентно (isup-
per(c) || islower(c)). В некоторых системах могут существовать дополнительные символы, для которых isalpha() в
ерно, т.е. буквы могут не находиться ни в верхнем, ни в нижнем регистре.

isascii()
проверяет, является ли c 7-битным unsigned char, значение которого попадает в таблицу символов ASCII. Эта функ
ция является расширением BSD и расширением SVID.

isblank()
проверяет, является ли символ "пустым"; то есть пробелом или символом табуляции. Эта функция является расширен
ием GNU.

iscntrl()
проверяет, является ли символ управляющим.

isdigit()
проверяет, является ли символ цифрой (от нуля до 9-и).

isgraph()
проверяет, является ли символ печатаемым (не пробелом).

islower()
проверяет, является ли символ символом нижнего регистра.

isprint()
проверяет, является ли символ печатаемым (включая пробел).

ispunct()
проверяет, является ли символ печатаемым; он не должен быть пробеломили текстовым символом.

isspace()
проверяет, являются ли символы неотображаемыми. В окружении "C" и "POSIX" таковыми являются: пробел, символ пер
евода страницы (’\f’), "новая строка" (’\n’), "перевод каретки" (’\r’), "горизонтальная табуляция" (’\t’) и "ве
ртикальная табуляция" (’\v’).


isupper()
проверяет, расположен ли символ в верхнем регистре.

isxdigit()
проверяет, принадлежит ли символ к шестнадцатеричному разряду, т.е. является ли он одним из: 0 1 2 3 4 5 6 7 8
9 a b c d e f A B C D E F.

ВОЗВРАЩАЕМЫЕ ЗНАЧЕНИЯ
Возвращаются ненулевые значения, если проверяемый символ c попадает в соответствующий класс символов, в противном случ
ае возвращается ноль.
...
Рейтинг: 0 / 0
ДОСовская C++
    #34259423
Sarr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо что ответили но…
В справке нет примеров по данным операторам, там есть только их перечисление….
Я бы просто хотел посмотреть синтаксис, как они хоть используются (применяются)…
А их перечисление пока мне мало, о чём говорит, не дорос ещё…
Можете написать небольшой код, который запрещает ввод букв, разрешён ввод только чисел. Пожалуйста!!!!
...
Рейтинг: 0 / 0
ДОСовская C++
    #34262930
lrad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот пример части готовой программы

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
//Ввод массива
void mass_in(float X[ 15 ], char Name)
{ cout<<"Введите массив "<<Name<<" из пятнадцати вещественных чисел";
  for(int i= 0 ; i< 15 ; i++)
  { cout<<endl<<Name<<"("<<i<<")=?";
    cin>>X[i];
    while (!cin.good())             //Проверка соответствия вводимых данных
    { cout << "Ошибка ввода. Вводите вещественные числа"<<endl
        <<Name<<"("<<i<<")=?";
      cin.clear();
      cin.ignore( 100 ,'\n');
      cin>>X[i];
    }
   }
   }

...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / ДОСовская C++
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]