Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Преобразование целых чисел в строку и обратно



Начну я с рассмотрения специальных функций для преобразования несовместимых типов. Самое частое, что может тебе понадобиться – преобразование строк в число и обратно. Допустим, что тебе нужно написать программу, в которой пользователь будет вводить число в компонент TEdit. Чтобы получить доступ к содержимому Edit1 надо написать Edit1. Text. Так мы получим текстовое представление числа. Чтобы его преобразовать, необходимо воспользоваться спец функцией. Вот давай и будем знакомиться с подобным примером.

Для преобразования строки в число используется функция StrToInt. У неё только один параметр – строка, а на выходе она возвращает число.

var ch:Integer; begin ch:=StrToInt(Edit1.Text); // Преобразовываю Edit1.Text в число end;

В этом примере я присвоил в переменную ch значение, содержащееся в Edit1.Text преобразованное в число. Теперь мы можешь производить математические действия с введённым числом.

Обратное преобразование (превращение числа в строку) можно произвести с помощью функции IntToStr.

var ch:Integer;

begin ch:=StrToInt(Edit1.Text); // Преобразовываю Edit1.Text в число ch:=ch+1; Edit1.Text:=IntToStr(ch); // Преобразовываю сh в строку

End;

Когда ты преобразовываешь строку в число, ты должен быть уверен в том, что строка содержит число. Если в строке будет хоть один символ не относящейся к цифре, то во время преобразования произойдёт ошибка. Чтобы избавить от ошибок, можно использовать исключительные ситуации, заключая преобразование между try и except. Но есть ещё один способ – использовать функцию StrToIntDef у которой уже два параметра:

1. 1. Строка, которую надо преобразовать

2. 2. Значение по умолчанию, которое будет возвращено, если произошла ошибка. Итак, наш пример можно подкорректировать следующим образом:

var ch:Integer; begin ch:=StrToIntDef(Edit1.Text, 0); // Преобразовываю Edit1.Text в число end;

В этом примере, если произойдёт ошибка во время преобразование, то функция не будет ругаться, а вернёт значение 0.






Дата публикования: 2014-11-04; Прочитано: 584 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...