اقتباس

Breakpoint

الـ breakpoint هي نقطة يضعها المبرمج عند أحد أسطر البرنامج ، تخبر الـ debugger أن يوقف البرنامج عند هذا السطر ويمكن معرفة حالة وقيمة المتغيرات عند هذا الوقت أي قبل تنفيذ الأسطر التالية؛ لها أكثر من فائدة مثلًا معرفة هل تم المرور على هذا الـ Block مثل Block الـ if ، أي هل تم تنفيذ مابداخله أو ماقيمة هذا المتغيّر في هذا الوقت من البرنامج كذلك معرفة قيم الـ Array كاملة وأيضّا معرفة قيمة العدّاد والرقم الذي توقّف عنده .

 إذا لم يقف البرنامج يعني أنه لم يمر على هذا السطر إما بسبب شرط if أو loop أو غير ذلك من الأسباب. 

إحدى طرق إضافتها في الكود : تقف عند السطر الذي تريده ، زر الفأرة الأيمن ، ثم اختيار insert break-point .

مثال :

في المثال نقرأ من المستخدم رقم ، نرسله للدالة ، الدالة تقسمه على 2 وتعيد الجزء الصحيح منه ، إذا كانت القيمة 1 فمافوق سيتم طباعة العبارة أما إذا كانت 0 ، لن يتم تنفيذ Block الـ if .

الـ Array في هذا المثال فقط حتى نرى العداد وصل إلى أي عدد ، ونرى قيم الـ Array كاملة .

#include <iostream>
#include <string>
using namespace std;

int fun(int num)
{
 return num / 2;

}
void main()
{
 //Breakpoint Example

 int num;
 cout << " Enter num: ";
 cin >> num;

 int Array[5];
 for (int i = 0; i < 5; i++)
 Array[i] = num *i;

 if (fun(num))
 {
 cout << "The number is greater than or equal 2" << endl;
 }
 system("pause");
}

قمت بوضع الـ breakpoint في السطر رقم 23 

أدخلت الرقم 3 ، في الأسفل نرى  قيم المتغيرات .

1 2 3 4 6 7 8

 

أدخلت رقم 1 ، ولم يحدث شيء لأن البرنامج لم يدخل الـ if أي لم يمر على الـ breakpoint.

Advertisements