- المتغيرات المحلية Local variables :
على خلاف المتغيرات العمومية , فإن المتغيرات المحلية "تتواجد فقط داخل الدالة التى تم إعلانها فيها" . هذا يعنى أن المتغير المحلى يتواجد فقط "أثناء تنفيذ الدالة" , و فى لحظة إنتهاء الدالة والحصول على عائدها يتم التخلص من المتغير .
مثال :
كود:
void main () // main function of the program
{
int count; // define the local variable "count" as int
count = count + 10;
}
لاحظ أن المتغير "count" تم إعلانه بداخل الدالة الرئيسية main (), هذا المتغير المحلى سوف يكون متاحا فقط بداخل الدالة التى أعلن فيها , فى هذه الحالة المتغير "count" يمكن فقط تناوله فى البرنامج داخل الدالة الرئيسية main () .
مثال آخر لتوضيح المتغير المحلى :
كود:
void subroutine () // any sub-program function
{
int time;
time = time * 2;
}
void main () // main function of the program
{
int time;
time = time / 2;
}
لاحظ أنه فى هذا المثال لدينا دالتان : الدالة الرئيسية main () ودالة فرعية subroutine () . بداخل كا دالة تم إنشاء متغير يسمى "time" من نوع int , ولأن المتغير المحلى قابل للاستخدام فقط داخل الدالة التى يتم إعلانه فيها فإن " المتغير "time" الموجود بالدالة الفرعية subroutine () ليس له أى إرتباط بالمتغير "time" الموجود بالدالة الرئيسية main () " لأنهما متغيرين محليين .
إذا وحدث أن ارتكبنا الخطأ التالى :
كود:
void subroutine () // any sub-program function
{
time = time * 2;
}
void main () / / main function of the program
{
int time;
}
لاحظ ن المتغير "time" تم إعلانه فقط داخل الدالة الرئيسية main () بينما تم تناول بياناتك داخل دالة أخرى تسمى subroutine () . عندما تترجم هذا البرنامج فسوف يظهر المترجم بالقطع رسالة خطأ مفادها "أن المتغير "time" غير معرف" . وهذا خطأ شائع نقع فيه فى بداية تعلم البرمجة لأننا ننسى أن المتغير المحلى متاح فقط داخل الدالة التى أعلن فيها .