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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
kLASTER
0 / 0 / 0
Регистрация: 20.05.2012
Сообщений: 13
#1

isdigit() не понимаю - C++

29.11.2012, 20:26. Просмотров 553. Ответов 2
Метки нет (Все метки)

Здрасти всем!
Не могу понять, почему isdigit() неверно себя ведет. Точнее абсолютно наоборот.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
 
const int SIZE = 10;
 
int main()
{ 
  using namespace std;
  double val[SIZE];
  int i;
  for(i = 0; i < SIZE; i++)
  {
    cin >> val[i];
    if(!isdigit(val[i]))
      break;
    cout << val[i];
  }
  cout << "Bad enter!" << endl;
  
  system("PAUSE");
  return 0;
}
Заранее спасибо!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.11.2012, 20:26     isdigit() не понимаю
Посмотрите здесь:

C++ С++ не понимаю
C++ Не Понимаю С++
Функция int isdigit(int С) C++
C++ циклы функций isdigit, insert
Не работает isdigit как задумано C++
C++ isdigit()
Напишите функцию bool IsDigit(unsigned char c), определяющую, является ли данный символ цифрой или нет C++
не понимаю ошибку C++
C++ Isalpha;isdigit неверное употребление функций?
Ошибка функции isdigit C++
C++ Цикл с проверкой isdigit

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
0x10
2455 / 1627 / 238
Регистрация: 24.11.2012
Сообщений: 4,003
29.11.2012, 20:42     isdigit() не понимаю #2
В документацию с такими вопросами отправлять надо. Функция используется для определения является ли символ (char) цифрой.
alsav22
5415 / 4811 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
29.11.2012, 20:59     isdigit() не понимаю #3
isdigit() анализирует код символа (цифра или нет), а вы ей подсовываете число типа double.

Добавлено через 1 минуту
Если массив сделать таким, то будет работать:
C++
1
char val[SIZE];
Yandex
Объявления
29.11.2012, 20:59     isdigit() не понимаю
Ответ Создать тему
Опции темы

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