بادئ ذي بدء ، نحن بحاجة إلى معرفة
Cint Range -32،768 إلى 32،767.
CLNG Range -2،147،483،648 إلى 2،147،483،647.
Cint و Clng المعنى:
يمكنك فرض تعبير على نوع البيانات
نطاق معالجة البيانات بواسطة Cint و CLNG:
Cinteger -32،768 إلى 32،767 ، يتم تقريب الأجزاء العشرية.
CLNG Long -2،147،483،648 إلى 2،147،483،647 ، يتم تقريب الجزء العشري.
يشير الفائض المزعوم إلى تجاوز نطاق معالجة البيانات. الرمز التالي هو الكود لمعالجة البيانات لمنع الفائض. يمكنك إلقاء نظرة على ذلك بنفسك:
'اكتشاف ما إذا كان عدد صحيح قصير
نسخة الكود كما يلي:
sub is_int (سلسلة)
إذا كان LEN (ABS (سلسلة))> 10 ثم استجابة.
إذا instr (سلسلة ، "-") <1 ثم
إذا كانت CINT (يسار (سلسلة ، 4))> 3276 و CINT (يمين (سلسلة ، 1))> 7 ثم استجابة.
آخر
إذا كان CINT (يسار (ABS (سلسلة) ، 4))> 3276 و CINT (يمين (سلسلة ، 1))> 8 ثم استجابة.
إنهاء إذا
نهاية الفرعية
'اكتشاف ما إذا كان عدد صحيح طويل
نسخة الكود كما يلي:
sub is_lng (سلسلة)
إذا كان LEN (ABS (سلسلة))> 10 ثم استجابة.
إذا instr (سلسلة ، "-") <1 ثم
إذا كان CLNG (يسار (سلسلة ، 9))> 214748364 و CLNG (يمين (سلسلة ، 1))> 7 ثم استجابة.
آخر
إذا كان CLNG (يسار (ABS (سلسلة) ، 9))> 21478364 و CLNG (يمين (السلسلة ، 1))> 8 ثم استجابة.
إنهاء إذا
نهاية الفرعية
فيما يلي بعض وظائف الاختبار ، يمكن للأصدقاء الذين يحتاجون إليها الإشارة إليها:
النوع الأول:
1. اكتشف ما إذا كان عدد صحيح
نسخة الكود كما يلي:
functionis_int (A_STR)
ifnotisnumeric (a_str) orlen (str)> 5then
is_int = false
exitfunction
elseiflen (str) <5then
is_int = صحيح
exitfunction
Endif
IFCINT (يسار (A_STR ، 4))> 3276then
is_int = false
exitfunction
elseifcint (يسار (A_STR ، 4)) = 3276ANDCINT (يمين (A_STR ، 1))> 7th
is_int = false
exitfunction
آخر
is_int = صحيح
exitfunction
Endif