إنتقل إلى المحتوى الرئيسي

الأخطاء

متىأمثلةما الذي يحدث
خطأ في الترجمةخطأ نحوي، أو دالة مضمَّنة غير معروفة، أو عدد وسيطات خاطئ، أو متغير غير معرَّف، أو ثابت مكتوب بشكل خاطئ، أو سلسلة نصية أو تعليق غير مغلقلا يعمل أي شيء. يُبلَّغ عن الخطأ الأول فقط، مع رقم السطر والعمود. تعرضه وحدة التحكم التشخيصية ومحرر واجهة التكوين.
إخفاق دالة مضمَّنةنوع وسيطة خاطئ، أو موضع بداية سالب لسلسلة فرعية، أو MathRandom(5, 1)، أو اسم زر غير معروف في مربع رسالة، أو محدِّد تقسيم فارغ، أو فتح منفذ تسلسلي فتحه Input.Observer بالفعليتوقف الإجراء عند ذلك الاستدعاء. لا تعمل العبارات التي تليه، ويُبلَّغ عن الخطأ بالشكل BuiltinName: السبب.
نتيجة هادئةعوامل على أنواع غير متوافقة، أو القسمة على صفر، أو نافذة فارغة أو مغلقة (يُقرأ موضعها أو حجمها أو DPI الخاص بها على أنه 0)، أو فهرس خارج النطاق، أو ملف غير موجود، أو منفذ تسلسلي لا يُفتحلا يوجد خطأ. تحصل على 0 أو false أو "" أو -1 أو Window فارغة، ويستمر البرنامج النصي.

أخطاء الترجمة الشائعة ومعناها:

ما كتبتهسبب الإخفاقاكتب بدلًا منه
i++; / i += 1;لا توجد عوامل زيادة ولا عوامل مركبةi = i + 1;
while (x) { … }while ليست كلمة أساسية، لذا تُقرأ كدالة غير معروفةحلقة for
x = n % 2;لا يوجد %x = n - (n / 2) * 2; أو n & 1
'text'علامات الاقتباس المفردة ليست محددات للسلاسل النصية"text"
r = .5; / r = 1e3;لا نقطة في البداية، ولا أُسس0.5 / 1000.0
a = b = 0;الإسناد ليس تعبيرًاa = 0; b = 0;
for (;;), for (i = 0, j = 0; …)يجب أن يكون كل من التهيئة والخطوة إسنادًا واحدًاj = 0; for (i = 0; …; i = i + 1)
print(x)دالة غير معروفة. أسماء الدوال المضمَّنة دقيقة وحساسة لحالة الأحرف.UtilityPrint(…)
y = total + 1; كأول سطرلم يُسنَد إلى total شيء قبل هذه النقطةأسنِد إليه أولًا: total = 0;