Прежде всего, нам нужно знать
Диапазон Cint -32 768 до 32 767.
Диапазон CLNG -2,147 483 648 до 2 147 483 647.
Cint и clng означает:
Вы можете привязать выражение типа данных
Объем обработки данных Cint и Clng:
Cinteger -32 768 до 32 767, десятичные части округлены.
Long -2,147 483 648 до 2 147 483 647, десятичная часть округлена.
Так называемый переполнение относится к превышению объема обработки данных. Следующий код является кодом для обработки данных для предотвращения переполнения. Вы можете взглянуть на это самостоятельно:
'Обнаружение того, является ли это коротким целым числом
Кода -копия выглядит следующим образом:
sub is_int (строка)
Если len (abs (string))> 10, то ответ.
Если instr (string, "-") <1 тогда
Если cint (left (string, 4))> 3276 и cint (right (string, 1))> 7, затем ответ.
еще
Если cint (left (abs (string), 4))> 3276 и cint (right (string, 1))> 8, затем ответ.
конец, если
Конец суб
'Обнаружение того, является ли это длинным целым числом
Кода -копия выглядит следующим образом:
sub is_lng (строка)
Если len (abs (string))> 10, то ответ.
Если instr (string, "-") <1 тогда
Если clng (left (string, 9))> 214748364 и clng (right (string, 1))> 7, затем ответ.
еще
Если clng (left (abs (string), 9))> 21478364 и clng (right (string, 1))> 8, затем ответ.
конец, если
Конец суб
Ниже приведены некоторые тестовые функции, друзья, которые это нуждаются, могут ссылаться на это:
Первый тип:
1. Обнаруйте, является ли это целым числом
Кода -копия выглядит следующим образом:
functionis_int (a_str)
ifnotisnumeric (a_str) orlen (str)> 5then
Is_int = false
Выходная функция
Elseiflen (str) <5then
Is_int = true
Выходная функция
эндиф
ifcint (слева (a_str, 4))> 3276then
Is_int = false
Выходная функция
elseifcint (left (a_str, 4)) = 3276 andcint (справа (a_str, 1))> 7then
Is_int = false
Выходная функция
еще
Is_int = true
Выходная функция
эндиф