أنواع البيانات لنتائج عامل التشغيل

Visual Basic يحدد نتيجة نوع البيانات لعملية استناداً إلى أنواع البيانات للمعاملات. في بعض الحالات قد يكون نوع البيانات مع نطاق أكبر من تلك التي في كلا المُعاملين.

نطاقات نوع البيانات

نطاقات أنواع البيانات ذات الصلة, بالترتيب من الأصغر إلى الأكبر ، كالتالي:

  • قيمة منطقية — قيمتين محتملتين

  • SByte, البايت — 256 قيم تكامل محتملة

  • قصير, UShort — 65,536 (6.5... E + 4) قيم تكامل محتملة

  • عدد صحيح, UInteger — 4,294,967,296 (4.2... E + 9) قيم تكامل محتملة

  • طويل, ULong — 18,446,744,073,709,551,615 (1.8... E + 19) قيم تكامل محتملة

  • عشري — 1.5... E + 29 قيم تكامل محتملة، أقصى نطاق 7.9... 28 E + (قيمة مطلقة)

  • مفرد — أقصى نطاق 3.4... E + 38 (قيمة مطلقة )

  • مزدوج — أقصى نطاق 1.7... E + 308 (قيمة المطلقة)

للحصول على المزيد من المعلومات حول أنواع البيانات Visual Basic راجع خلاصة نوع بيانات (Visual Basic).

إذا كان مُعامل يقيم ل لا شيء, العوامل الحسابية Visual Basic تعامله كأصفار.

حسابي عشري

لاحظ أن نوع البيانات الـعشري ليس نظام عدد مضروب بأس القاعدة ولا عدد صحيح.

إذا كان أحد عوامل من +,– ,
* ,/ ، أو Mod العملية هي Decimal و الأخرى غير ذلك Single أو Double , Visual Basic يوسع المُعامل الأخر ل Decimal . ينفذ العملية في Decimal، و نوع البيانات الناتج هو Decimal.

الفاصلة العائمة الحسابية

Visual Basic ينفذ أكثر عمليات الفاصلة العائمة الحسابية في مزدوج ، والتي هي نوع البيانات الأكثر كفاءة عن مثل هذه العمليات. ومع ذلك، إذا كان مُعامل هو مفرد والآخر غير ذذلك Double, Visual Basic ينفذ التشغيل في Single. يوسع كل معامل حسب الحاجة إلى نوع بيانات المناسب قبل حصول التشغيل و الناتج على نوع البيانات هذا.

/ و ^ عوامل التشغيل

عامل التشغيل/ يتم تعريفه فقط ل العشري, المفردمالزدوج أنواع البيانات. Visual Basicيوسع كل معامل حسب الحاجة إلى نوع بيانات المناسب قبل حصول التشغيل و الناتج على نوع البيانات هذا.

يعرض الجدول التالي أنواع البيانات الناتجه لعامل التشغيل / . لاحظ أن هذا الجدول متماثل; لتركيبة معينة من أنواع البيانات المُعامل ، نوع البيانات الناتج هو نفس نوع بغض النظر عن ترتيب المُعاملات .

Decimal

Single

Double

أي نوع عدد صحيح

Decimal

عشري

مفرد

مزدوج

عشري

Single

مفرد

مفرد

مزدوج

مفرد

Double

مزدوج

مزدوج

مزدوج

مزدوج

أي نوع عدد صحيح

عشري

مفرد

مزدوج

مزدوج

عامل التشغيل^ يتم تعريفة فقط لنوع البيانات Double . Visual Basicيوسع كل معامل عند الضرورة ليتم Double قبل التشغيل, ونوع البيانات الناتج دائماً Double.

عدد صحيح حسابي

يعتمد نوع البيانات الناتج لعملية عدد صحيح على أنواع البيانات لمعاملات التشغيل . بشكل عام Visual Basic يستخدم النهج التالي لتحديد نوع البيانات الناتج:

  • إذا كان كلا المعاملين لعامل تشغيل ثنائي له نفس نوع البيانات، وبالتالي الناتج يملك ذلك النوع من البيانات. يتم استثناءBoolean، حيث يتم فرضه إلى Short.

  • إذا تشارك معامل بدون اشارة مع معامل باشارة, الناتج يكون من النوع ذو الاشارة مع الأقل كـأكبر مدى من أحد المعاملين.

  • وإلا، عادةً تملك النتيجة أكبر نوع بيانات معامل التشغيل من الاثنين.

لاحظ أن نوع البيانات الناتج قد لا يكون نفس نوع بيانات مُعامل التشغيل.

ملاحظة

نوع البيانات الناتج ليس دائماً كبير بشكل كاف لاحتواء كل القيم الممكنة الناتجة من التشغيل. استثناء OverflowException يمكن أن يحدث ‏‏إذا كانت القيمة كبيرة جداً بالنسبة نوع بيانات النايج .

عاملي أحادي + و –

يعرض الجدول التالي أنواع البيانات الناج للعوامل الأحادية الاثنين, +
 و –.

Boolean

SByte

Byte

Short

UShort

Integer

UInteger

Long

ULong

+ أحادي

قصير

SByte

Byte (بايت)

قصير

UShort

Integer (عدد صحيح)

UInteger

Long (طويل)

ULong

– أحادي

قصير

SByte

قصير

قصير

Integer (عدد صحيح)

Integer (عدد صحيح)

Long (طويل)

Long (طويل)

عشري

عوامل التشغيل << و >>

يعرض الجدول التالي أنواع البيانات الناج لعوامل ازاحة البت الاثنين, <<
 و >>. Visual Basic يعامل كل عامل ازاحة البت كعامل أحادي على مُعامل التشغيل الموجود على يساره (نقش البت المراد ازاحته).

Boolean

SByte

Byte

Short

UShort

Integer

UInteger

Long

ULong

<<, >>

قصير

SByte

Byte (بايت)

قصير

UShort

Integer (عدد صحيح)

UInteger

Long (طويل)

ULong

إذا كان المُعامل الأيسر Decimal, Single, Double، أو String, Visual Basic قبل التشغيل ويحاول تحويله Long ونوع البيانات الناتج هو Long. الـمُعامل في اليمين (عدد مواضع بت المراد ازاحتها) يجب أن يكون Integer أو نوع يقوم بتوسيع إل Integer.

عوامل ثنائي ال +,-, *, و ال Mod

يعرض الجدول التالي أنواع البيانات الناتجة لثنائي +و –العوامل و *و Modالعوامل. لاحظ أن هذا الجدول متماثل; لتركيبة معينة من أنواع البيانات المُعامل ، نوع البيانات الناتج هو نفس نوع بغض النظر عن ترتيب المُعاملات .

Boolean

SByte

Byte

Short

UShort

Integer

UInteger

Long

ULong

Boolean

قصير

SByte

قصير

قصير

Integer (عدد صحيح)

Integer (عدد صحيح)

Long (طويل)

Long (طويل)

عشري

SByte

SByte

SByte

قصير

قصير

Integer (عدد صحيح)

Integer (عدد صحيح)

Long (طويل)

Long (طويل)

عشري

Byte

قصير

قصير

Byte (بايت)

قصير

UShort

Integer (عدد صحيح)

UInteger

Long (طويل)

ULong

Short

قصير

قصير

قصير

قصير

Integer (عدد صحيح)

Integer (عدد صحيح)

Long (طويل)

Long (طويل)

عشري

UShort

Integer (عدد صحيح)

Integer (عدد صحيح)

UShort

Integer (عدد صحيح)

UShort

Integer (عدد صحيح)

UInteger

Long (طويل)

ULong

Integer

Integer (عدد صحيح)

Integer (عدد صحيح)

Integer (عدد صحيح)

Integer (عدد صحيح)

Integer (عدد صحيح)

Integer (عدد صحيح)

Long (طويل)

Long (طويل)

عشري

UInteger

Long (طويل)

Long (طويل)

UInteger

Long (طويل)

UInteger

Long (طويل)

UInteger

Long (طويل)

ULong

Long

Long (طويل)

Long (طويل)

Long (طويل)

Long (طويل)

Long (طويل)

Long (طويل)

Long (طويل)

Long (طويل)

عشري

ULong

عشري

عشري

ULong

عشري

ULong

عشري

ULong

عشري

ULong

عامل \

يعرض الجدول التالي أنواع البيانات الناتجه لعامل التشغيل \ . لاحظ أن هذا الجدول متماثل; لتركيبة معينة من أنواع البيانات المُعامل ، نوع البيانات الناتج هو نفس نوع بغض النظر عن ترتيب المُعاملات .

Boolean

SByte

Byte

Short

UShort

Integer

UInteger

Long

ULong

Boolean

قصير

SByte

قصير

قصير

Integer (عدد صحيح)

Integer (عدد صحيح)

Long (طويل)

Long (طويل)

Long (طويل)

SByte

SByte

SByte

قصير

قصير

Integer (عدد صحيح)

Integer (عدد صحيح)

Long (طويل)

Long (طويل)

Long (طويل)

Byte

قصير

قصير

Byte (بايت)

قصير

UShort

Integer (عدد صحيح)

UInteger

Long (طويل)

ULong

Short

قصير

قصير

قصير

قصير

Integer (عدد صحيح)

Integer (عدد صحيح)

Long (طويل)

Long (طويل)

Long (طويل)

UShort

Integer (عدد صحيح)

Integer (عدد صحيح)

UShort

Integer (عدد صحيح)

UShort

Integer (عدد صحيح)

UInteger

Long (طويل)

ULong

Integer

Integer (عدد صحيح)

Integer (عدد صحيح)

Integer (عدد صحيح)

Integer (عدد صحيح)

Integer (عدد صحيح)

Integer (عدد صحيح)

Long (طويل)

Long (طويل)

Long (طويل)

UInteger

Long (طويل)

Long (طويل)

UInteger

Long (طويل)

UInteger

Long (طويل)

UInteger

Long (طويل)

ULong

Long

Long (طويل)

Long (طويل)

Long (طويل)

Long (طويل)

Long (طويل)

Long (طويل)

Long (طويل)

Long (طويل)

Long (طويل)

ULong

Long (طويل)

Long (طويل)

ULong

Long (طويل)

ULong

Long (طويل)

ULong

Long (طويل)

ULong

إذا كان أحد مُعاملي عامل التشغيل \ هو الـعشري, الـمفرد, أو الـمزدوج, Visual Basic يحاول تحويله الى الطويل قبل التشغيل ونوع بيانات الناتج هو Long.

مقارنات علائقية و المختصة بالبت

نوع البيانات الناتجة لتشغيل العلائقية (=, <>, <, >, <=, >=) هو دوماً Booleanنوع بيانات القيمة المنطقية في (Visual Basic). ونفس الشيء صحيح بالنسبة للتشغيلات المنطقية (And, AndAlso, Not, Or, OrElse, Xor) على معاملات Boolean .

نوع البيانات الناتجة للتشغيل المنطقية المختصة بالبت يعتمد على أنواع البيانات للمعاملات. لاحظ أن AndAlso و OrElse يتم تعريفها فقط ل Boolean، و Visual Basic يقوم بتحويل كل مُعامل كلما دعت الضرورة إلى Boolean قبل تنفيذ التشغيل.

عوامل التشغيل =, <>, <, >, <=,و >=

إذا كان كلاهما المعاملين عبارة عن Boolean, Visual Basic يعتبر True ليكون أقل من False. في حالة مقارنة نوع عددي مع String, Visual Basic يحاول تغيير ال String إلى Double قبل التشغيل. عوامل الChar أو Date يمكن مقارنتها فقط مع معامل آخر من نفس نوع البيانات. يكون نوع البيانات الناتج دوماً Boolean.

المختصة بالبت ليست عامل تشغيل

يعرض الجدول التالي أنواع البيانات الناتجه لعامل التشغيل المختص بالبت Not .

Boolean

SByte

Byte

Short

UShort

Integer

UInteger

Long

ULong

Not

قيمة منطقية

SByte

Byte (بايت)

قصير

UShort

Integer (عدد صحيح)

UInteger

Long (طويل)

ULong

إذا كان المُعامل Decimal, Single, Double، أو String, Visual Basic يحاول تحويله الى Long قبل التشغيل ونوع البيانات الناتج هو Long.

عوامل التشغيل المختصة بالبت و، أو ، Xor

يعرض الجدول التالي أنواع البيانات الناتجة لعوامل التشغيل Andو Or و Xor. لاحظ أن هذا الجدول متماثل; لتركيبة معينة من أنواع البيانات المُعامل ، نوع البيانات الناتج هو نفس نوع بغض النظر عن ترتيب المُعاملات .

Boolean

SByte

Byte

Short

UShort

Integer

UInteger

Long

ULong

Boolean

قيمة منطقية

SByte

قصير

قصير

Integer (عدد صحيح)

Integer (عدد صحيح)

Long (طويل)

Long (طويل)

Long (طويل)

SByte

SByte

SByte

قصير

قصير

Integer (عدد صحيح)

Integer (عدد صحيح)

Long (طويل)

Long (طويل)

Long (طويل)

Byte

قصير

قصير

Byte (بايت)

قصير

UShort

Integer (عدد صحيح)

UInteger

Long (طويل)

ULong

Short

قصير

قصير

قصير

قصير

Integer (عدد صحيح)

Integer (عدد صحيح)

Long (طويل)

Long (طويل)

Long (طويل)

UShort

Integer (عدد صحيح)

Integer (عدد صحيح)

UShort

Integer (عدد صحيح)

UShort

Integer (عدد صحيح)

UInteger

Long (طويل)

ULong

Integer

Integer (عدد صحيح)

Integer (عدد صحيح)

Integer (عدد صحيح)

Integer (عدد صحيح)

Integer (عدد صحيح)

Integer (عدد صحيح)

Long (طويل)

Long (طويل)

Long (طويل)

UInteger

Long (طويل)

Long (طويل)

UInteger

Long (طويل)

UInteger

Long (طويل)

UInteger

Long (طويل)

ULong

Long

Long (طويل)

Long (طويل)

Long (طويل)

Long (طويل)

Long (طويل)

Long (طويل)

Long (طويل)

Long (طويل)

Long (طويل)

ULong

Long (طويل)

Long (طويل)

ULong

Long (طويل)

ULong

Long (طويل)

ULong

Long (طويل)

ULong

إذا كان معامل عبارة عن Decimal, Single, Double، أو String, Visual Basic يحاول تحويله الى Long قبل التشغيل و نوع البيانات الناتجة هي نفسها كما لو كان عامل التشغيل ذاك قد كان مسبقاً Long.

عوامل التشغيل المتنوعة

عامل التشغيل & يتم تعريفه فقط من أجل ربط عوامل ال String المعاملات. Visual Basicيحول كل معامل عند الضرورة ل String قبل التشغيل, ونوع البيانات الناتج دائماً String. لأغراض عامل التشغيل & كل عمليات التحويل إلى String تعتبر يمكن توسيعها حتى إذا Option Strict هو On.

عوامل Is و IsNot يتطلب كلا المعاملين أن يكونا من نوع المرجع. تعبير TypeOf... Is يتطلب أن يكون المُعامل الأول من نوع المرجع و المُعامل الثاني أن يكون اسم نوع البيانات. في كل هذه الحالات نوع البيانات الناتجة هو Boolean.

عامل التشغيل Like يتم تعريفه فقط من أجل مطابقة نقش معاملات ال String . Visual Basic يحاول تحويل كل معامل عند الضرورة إلى String قبل التشغيل. يكون نوع البيانات الناتج دوماً Boolean.

راجع أيضًا:

المرجع

خلاصة نوع بيانات (Visual Basic)

أسبقية عامل التشغيل في Visual Basic

عوامل تشغيل مسرودة حسب الوظيفة

عوامل التشغيل الحسابية في (Visual Basic)

عوامل تشغيل المقارنة (Visual Basic)

كشف الخيار الصارمِ

المبادئ

عوامل التشغيل و التعبيرات في Visual Basic

عوامل التشغيل الحسابية في (Visual Basic)

عوامل تشغيل المقارنة في Visual Basic

موارد أخرى

عوامل التشغيل (Visual Basic)