المتغيرات المحلية

في هذا الوقت، قد تتساءل كيف تمكنا من استخدام نفس المتغير i في العمليتين printMultiples وprintMultTable. ألم أقل أنك تستطيع التصريح عن المتغير مرة واحدة فقط؟ وألا يسبب ذلك المشاكل عندما تبدّل إحدى العمليتين قيمة المتغير؟
إن الإجابة عن السؤالين هي "لا"، لأن i في العملية printMultiples وi في العملية printMultTable ليسا المتغير نفسه. صحيح انهما يملكان نفس الاسم، لكنهما لا يشيران إلى نفس المنطقة التخزينية، وإن تغيير قيمة أحدهما لا يؤثر على الآخر.
المتغيرات التي يتم التصريح عنها داخل تعريف عملية تدعى بالمتغيرات المحلية (local variables) لأنها محدودة بالعملية التي توجد فيها. لا يمكنك الوصول إلى متغير محلي من خارج عمليته "الأم"، ولك الحرية في امتلاك عدة متغيرات محلية بنفس الاسم، طالما أنها غير موجودة في العملية نفسها.
من الجيد غالباً استعمال أسماء مختلفة في العمليات المختلفة، لتفادي الإرباك، لكن توجد أسباب وجيهة لإعادة استعمال الأسماء. مثلاً، من الشائع استعمال الأسماء i، j، وk كمتغيرات حلقة. إذا تفاديت استعمالها في عملية واحدة فقط لأنها قد استعملت في مكان آخر، فعلى الأغلب أنك ستجعل البرنامج أصعب للقراءة.