|
Программирование >> Проектирование интерфейса пользователя
Рассмотренные примеры преобразований очевидны. Команда в строке 14 II с помощью функции TypeName осуществляет в окне Immediate вывод строки, содержащей наименование типа переменной Т. (Напомним, что команда Debug. Print отображает содержимое своего аргумента-выражения в окне Immediate.) Результат вычисления процедуры strAnd-Val представлен на рис. 10.1. Обратите внимание: вместо ожидаемого итога выполнения строки е34) на экране отображается равноценное, но упрощенное число 1е+35, а команда строки 7 выводит число 3, поскольку символ i при преобразовании отбрасывается. с ..п V -. contacts (contacts} lit. 1 Cis L As I.ctig Eia D As D=ablc D - Vali-I0e3< ) Dei=-Jg.PriiiT;D i - VilfSl-l Debug .Priric I Ei;= 5 As ST-rliM Din T As String S - szriD) Debug - Print S T - Sr.r4.) Debug .Frini: T Debug. Print lree.4 : Debug.Print T End s-ub Puc. 10.1. Так выглядят результаты преобразований с помощью функций Val и Sir в окне Immediate Строковые функции двойного назначения В табл Ш. 1 перечислены функции, которые реализованы в двух версиях. Если имя функции заверщается символом доллара ($), она возвращает значение типа String; если нет - результатом будет величина Variant.
Окончание табл. 10.1 Функция Возвращаемое значение и описание CurDir$[( Диск)] Date$ Dir$ Поиска [, АтрибутыФайла]) IError$( НомерОшибки) Format$( Выражение [, Формат [, Первый-ДеньНедели [, ПерваяНеделяГода]]]) Нех$( Число) lnput$( Число, [#]НомерФайла) lnputB$( ЧислоБайтов, [#]НомерФайла) Lcase$( Строка ) Left$( Строка, ЧислоСимволов) LeftB$( Строка, ЧислоБайтов) Ltrim$( Строка ) Mid$( Строка, НачальнаяПозиция [, ЧислоСимволов] ) MidB$( Строка, НачальнаяПозиция [, ЧислоБайтов]) Oct$( Число) Right$( Строка, ЧислоСимволов ) . Строка, Rtrim$( Строка) Space$( ЧислоПробелов) Str$( Число) String$( ЧислоСимволов, Символ) Time$ Trim$( Строка) Ucase$( Строка) Наименование текущего каталога на указанном диске. Параметр, указывающий букву дисковода, необязателен Строка, содержащая текущую дату Наименование первого найденного файла, удовлетворяющего заданным критериям поиска Сообщение об ошибке, соответствующее указанному номеру. Если номер ошибки не задан, возвращается сообщение о последней ошибке Строка, которая форматируется в соответствии с инструкциями, заданными в необязательных аргументах Заданное число адатеричной системе счисления Строка, содержащая заданное число символов, которая считывается из указанного файла Строка символов, содержащая заданное число байтов, которая считывается из указанного файла Строка, алфавитные символы которой преобразованы в нижний регистр Левая часть строки, содержащая указанное число символов Левая часть строки, содержащая указанное число байтов Строка, в которой удалены ведущие пробелы Часть строки, содержащая указанное число символов, начиная с заданной позиции Часть строки, содержащая указанное число байтов, начиная с заданной позиции Строка, содержащая восьмеричное представление заданного десятичного числа Правая часть строки, содержащая указанное число символов Правая часть строки, содержащая указанное число байтов Строка, в которой удалены хвостовые пробелы Строка пробелов заданной длины Строка, содержащая символьное представление заданного числа Строка указанных символов заданной длины Строка, содержащая текущее время Строка, в которой удалены ведущие и хвостовые пробелы Строка, алфавитные символы которой преобразованы в верхний регистр Например, вызов Chr ( 65 ) даст в итоге значение Variant. Если же обратиться к функции Chr$ ( 65 ), будет возвращена строка (String), хотя оба результата равны символу А. Значения типа Variant более гибкие и управляемые, но их использование связано с издержками в виде дополнительного расхода памяти и процессорного времени, поэтому применять их следует осмысленно. Если определенный тип значения известен заранее, оговаривайте его явно. Функции преобразования типов данных Функций преобразования типов данных настолько много, что подробно описать их в этой книге не удастся. Исчерпывающую информацию по данному вопросу можно найти в справочной системе. Существует множество функций, преобразующих строки в числовые выражения определенных типов данных. Все они имеют один вид: в функцию передается единственный аргумент - строка или числовое выражение, а возвращаемый результат представляет собой числовое значение нужного типа данных. Ниже приведены некоторые из подобнтх функций. CBool преобразует выражение в значение типа Boolean. CByte преобразует выражение в значение типа Byte. CCur преобразует выражение в значение типа Currency. CDate преобразует выражение в значение типа Date. CDbl преобразует выражение в значение типа Double. CDec преобразует выражение в значение типа Decimal. cint преобразует выражение в значение типа integer. CLng преобразует выражение в значение типа Long. CSng преобразует выражение в значение типа single. CStr преобразует выражение в значение типа String. CVar преобразует выражение в значение типа Variant. Нельзя объявить переменную тип ных Decimal. Для хранения данных этого типа необходимо объявить переменную типа Variant. строку False в переменную типа Boolean, используйте Чтобы преобразовать функцию CBool. Dim В As Boolean В = CBooi( False ) Преобразовать строку в значение типа Decimal можно, объявив переменную типа Variant и использовав функцию CDec. Dim S As String 3=1234567890123456789 Dim D As Variant D = CDec(S) D = D * 10000 MsgBox D Функции преобразования активно применяются программистами, поскольку часто возникает необходимость предоставлять данные в виде строки (чтобы пользователь мог их отредактировать), а затем обновленные данные вновь преобразовывать в исходный тип для выполнения вычислений.
|
© 2006 - 2025 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |