![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Контроль превышения размера числа
Первокурсница © (2010-03-13 15:14:00)Как сделать так чтобы если мы вводим в Edit любое число превышающее диапазон Integer (-2147483648..2147483647) программа не вылетала бы а показывала бы сообщение "Превышен размер числа"?
Пишу вот так:
procedure TForm1.Edit2Change(Sender: TObject);
begin
If (StrToInt(Edit2.Text)>2147483646) OR (StrToInt(Edit2.Text)<-2147483647)
then begin ShowMessage('Выход за границы массива!');
Edit1.Text:='20';
end;
end;
Но если набираю допустим 9999999999 или 6768435794357 то прога вылетает :( Может это вообще невозможно сделать?
Palladin (2010-03-13 15:17:00) [41]program Project9;
{$APPTYPE CONSOLE}
var
c, n: integer;
s: String;
begin
s := '9999999999';
val(s, n, c);
Writeln(n);
if c <> 0 then
Writeln('ах тыж ё..п, мт, а :%№?:!? "?4"4765, С равно "', c, '"');
readln;
end.