|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Проблема с StrToint
Имеется код
Код:
uMem.GetAppStr(edApp.Text,StrToInt( '$'+edit1.Text + edit2.Text + edit3.Text)); Если числа, то все работает хорошо, если буквы/буквы+числа, то ошибка. Как можно исправить чтобы работало с буквами? |
#2
|
|||
|
|||
Еще интересным фактом будет то, что edit3 равен 'ED88' - буквы/числа, но не выдает ошибку при цифрах в edit2.
|
#3
|
|||
|
|||
HextToInt???
А еще есть набор тех же функций, но начинающийся с Try (TryStrToInt, например). |
#4
|
||||
|
||||
Как вариант — писать перед "буквами" нуль.
— Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#5
|
|||
|
|||
Цитата:
Или я что-то делаю не так? Цитата:
|
#6
|
||||
|
||||
Странно как-то, у меня вот такой код работает на ура:
Код:
var s:string; n:Integer; begin s:='0C3'; n:=StrToInt('$'+s); ShowMessage(IntToStr(n)); end; Некоторые программисты настолько ленивы, что сразу пишут рабочий код. Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты. |
#7
|
|||
|
|||
Цитата:
Код:
var i: integer; ... i:= StrToInt('$' + edit1.Text + edit2.Text + edit3.Text); Button1.Caption:= uMem.GetAppStr(edApp.Text,i); |
#8
|
||||
|
||||
Ну вот такое еще приходит на ум: попробуй сделать вызов так SysUtils.StrToInt
Некоторые программисты настолько ленивы, что сразу пишут рабочий код. Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты. |
#9
|
||||
|
||||
Код:
s := '$'+edit1.text+edit2.test+edit3.text; i := strtoint(s); — Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#10
|
|||
|
|||
Цитата:
|
#11
|
||||
|
||||
Не увидел чтоли что я опечатался и вместо text написал test?
— Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#12
|
|||
|
|||
Есть ещё старая ламповая функция VAL
Код:
var i:integer; s:string; c:integer; s:='$' + 'ab0' + 'qwerty'; val(s,i,c); if c <> 0 then begin // значит в строке есть неправильный символ s := copy(s,1,c); val(s,i,c); end; |
#13
|
||||
|
||||
Цитата:
Некоторые программисты настолько ленивы, что сразу пишут рабочий код. Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты. |
#14
|
|||
|
|||
>Есть ещё старая ламповая функция VAL
>StrToInt именно ее и вызывает Но важно, что делать, когда в строке есть неправильные символы. StrToInt выдаёт Exception , TryStrToInt просто сообщает, что ошибка была , а у меня пытается преобразовать в число начало строки до первого ошибочного символа. |