| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > Проверка на целое значение |
| Автор: Voldemar2004 4.11.2009, 20:39 | ||
Функция проверяет на целое значени:
Но ведь целое число это и 2.000 и -2.00. Как лучше проверить это ? С помощью функции atol() ? |
| Автор: Pitlord 4.11.2009, 21:06 | ||
|
| Автор: 586 5.11.2009, 00:24 |
| ... |
| Автор: azesmcar 5.11.2009, 08:23 | ||||
так? хотя мне самому не очень или так
|
| Автор: Voldemar2004 6.11.2009, 20:34 | ||
|
| Автор: Anikmar 6.11.2009, 20:46 |
| Если нужна функция проверки содержит ли строка валидное целое число, то наверное нужно идти по пути Pitlord - т.е. первй знак может быть либо цифра либо знаки + или - Далее только цифры (если не нужно проверять на переполнение) и точка. После точки допускаю.тся только нули. можно преобразовать в double, затем double в long и посмотреть разницу между ними. Если 0 - то число целое. Но тут возможны нюансы в виде разницы 0.00000.......1 |
| Автор: Dov 6.11.2009, 21:42 | ||
Если есть гарантия, что в строке только цифровые символы и точка, то что-нить такое...
|
| Автор: Anikmar 6.11.2009, 22:51 |
| А если точки в строке нет? |
| Автор: Dov 6.11.2009, 23:04 |
значит это целое... |
| Автор: Anikmar 6.11.2009, 23:09 |
А просто 0? |
| Автор: Dov 6.11.2009, 23:13 |
На 0 делить нельзя... |
| Автор: Anikmar 6.11.2009, 23:30 |
Сдаюсь. Уболтал, черт языкастый... |
| Автор: Dov 6.11.2009, 23:52 |
| Ну, слава б-гу... |