Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Является ли строка числом [D7, XP]


Saha ©   (2015-06-09 09:29:00) 

Всем привет. Подскажите как проверить значение переменной типа string, является ли это значение числом или нет.
Спасибо


Германн   (2015-06-22 01:00:00) [1]


> StrToIntDef   (21.06.15 21:58) [17]
>
> ?
> 1
>  
> StrToIntDef

Имхо, самое бредовое и вредное изобретение папаши Борланда.
Никакого сообщения об ошибке, а программа выдаёт неверные результаты.
Ну и как следствие - падают ракеты.


StrToIntDef   (2015-06-21 21:58:00) [2]

StrToIntDef.


backuper   (2015-06-11 08:19:00) [3]

Потому что эта функция делает именно то, что просит автор: "проверить значение переменной типа string, является ли это значение числом или нет".

Назначение функции StrToInt не проверка, а преобразование типа, с генерацией исключения в случае ошибки. Как ведет себя исключение под отладчиком - напоминать не надо?

PS Странно, что еще никто не попытался ехидно намекать на дробные числа...


brother   (2015-06-11 02:16:00) [4]

[14] присоединяюсь к вопросу...


Германн   (2015-06-11 01:51:00) [5]


> backuper   (10.06.15 12:27) [13]
>
>
> > try?
>
> не try, TryStrToInt
>

Почему именно TryStrToInt?


backuper   (2015-06-10 12:27:00) [6]


> try?

не try, TryStrToInt


Германн   (2015-06-10 02:18:00) [7]

Удалено модератором
Примечание: Создание пустых сообщений


Dennis I. Komarov   (2015-06-09 23:55:00) [8]

Удалено модератором
Примечание: Создание пустых сообщений


кгшзх   (2015-06-09 18:24:00) [9]

Является ли строка числом

Нет.


brother   (2015-06-09 15:26:00) [10]

> это понятно. а если там не число, то будет ошибка вылетать

try?


Dimka Maslov   (2015-06-09 11:49:00) [11]


> Старый добрый Val спасет ОРД


Но только в том случае если сам О.Р.Д. имеет представление о десятичном разделителе и региональных настройках. А иначе О.Р.Д. будет опять смущён.


Saha   (2015-06-09 11:39:00) [12]

спс


icWasya   (2015-06-09 11:31:00) [13]

Ещё со времён Турбо-паскаля есть такая процедура-val
Используется так

var
 Cod:integer;
 Value:integer;{или double}
 S:String;

...
 val(S,Value,Code);

 if Code=0 then// всё в порядке
 else // здесь Code = номер символа, который не цыфра


Германн   (2015-06-09 11:29:00) [14]

Старый добрый Valспасет ОРД


RWolf   (2015-06-09 10:26:00) [15]


>  а если там не число, то будет ошибка вылетать

так именно это и требуется.


Игорь Шевченко   (2015-06-09 10:17:00) [16]

TryStrToInt


Saha   (2015-06-09 09:52:00) [17]


> Вы не поверите: StrToInt...

это понятно. а если там не число, то будет ошибка вылетать


brother   (2015-06-09 09:34:00) [18]

Вы не поверите: StrToInt...


Наверх

Титульная страница Поиск, карта сайта Написать письмо