Функции преобразования

Asc
Code = Asc ( String [ , Position ] )

Возвращает ASCII код символа в позиции Position строки. Если Position не задано, возвращается ASCII код первого символа.
Будьте внимательны ! Gambas использует UTF-8 кодировку внутренне, так что код символа больше, чем 128 не имеет значения, это используется в кодировках типа ISO8859-1.

Пример:

PRINT Asc("Gambas") --> 71
PRINT Asc("Gambas", 3) --> 109
Chr$
Character = Chr$ ( Code )

Возвращает символ, чей ASCII код - это Code.
Будьте внимательны! Gambas использует внутренюю кодировку UTF-8, так что код символа больше, чем 128 не означает, что кодировка подобна ISO8859-1.

Пример:

PRINT Chr$(65)A

PUBLIC SUB Button1_Click()
DIM X AS Integer
FOR X = 32 TO 127
PRINT Chr$(X);
NEXT
END

Val
Expression=Val(String)

Конвертирует строку в булево значение, число или дату, согласно содержимому строки.
Текущая локализация используется для конвертирования чисел и дат. Алгоритм преобразования следующий:
Если строка может интерпретирваться как дата и время (с даты и времени разделителями), тогда возвращается дата и время.
Иначе, если строка может интерпретироваться как число с плавающей точкой, тогда это число с плавающей точкой возвращается.
Иначе, если строка может интерпретироваться как целое число, тогда возвращается это целое число.
Иначе, если строка - это TRUE или FALSE , тогда соответствующее булево значение возвращается.
В противном случае возвращается NULL.

Пример:

PRINT Val("09/06/72 01:00") --> 09/06/72 01:00:00
PRINT Val("3.1415") --> 3.1415
PRINT Val("-25") --> -25
PRINT Val("True") --> True
PRINT IsNull(Val("Gambas")) --> True
Str$
String = Str$ ( Expression )

Конвертирует выражение в представление выводимой строки. Это точно противоположно Val() .
Текущая локализация используется для конвертации чисел и дат.

Пример:

' Print on standard output or in a message
PUBLIC CONST ON_STDOUT AS Integer = 1
PUBLIC CONST ON_MESSAGE AS Integer = 2
SUB PrintOn(Where AS Integer, What AS Variant)
IF Where = ON_STDOUT THEN PRINT What
ELSE
IF Where = ON_MESSAGE THEN Message(Str$(What))
END IF
END
Hex$
String=Hex$(Number[,Digits])

Берет шестнадцатеричное представление числа. Если задано Digits , представление дополняется ненужными нулями, так что это Digits количество цифр возвращается.

Пример:

PRINT Hex$(1972) --> 7B4
PRINT Hex$(1972, 8) --> 000007B4
Bin$
String=Bin$(Number[,Digits])

Получает двоичное представление числа. Если Digits задано, представление заполняется ненужными нулями, так что Digits цифры возвращаются.

Пример:

PRINT Bin$(77) --> 1001101
PRINT Bin$(77, 16) --> 0000000001001101