السلام عليكم ,,
كما تعودنا دائماً في عالم لمحات ++C :)
سنأتي اليوم بسؤال قد يبدو بسيطاً في البداية و لكنه يحمل الكثير من الفائدة و الممارسة البرمجية الجيدة في المستقبل,
موضوعنا اليوم هو حول المتغيرات العامة global variables و المتغيرات المحلية local variables.
لا أعتقد أن أحداً معنا في القسم, لا يعرف ما هي الفرق بين الاثنتين, و لو بشكل بسيط على الأقل, لأنها من الأساسيات التي لا يمكن البرمجة بدونها,
و لكننا اليوم سندخل قليلاً في بعض التفاصيل التي تحدث خلال ترجمة الكود, لنتعرف على فرق جديد بين الاثنتين,
لو تخيلنا أن لدينا حلقة, هذه الحلقة تتكرر لمدة 4294967295 :P مرة, حسناً الحلقة وضعت للتجربة فقط و السؤال ليس عليها :rolleyes: الآن سأعرض طريقيتين متطابقتين لكتابة الحلقة (البسيطة جداً) :
for( unsigned int i = 0; i < 4294967295; i++ );
الطريقة الثانية ستكون كالتالي :
unsigned i;
int main(){
for( i = 0; i < 4294967295; i++ );
return 0;
}انظر إلى المتغير i حيث عرفناه مرة داخل الـ for loop و مرة كمتغير عام global variable ,,
العملية الأساسية التي ستحدث داخل الحلقة هي العملية التالية :
i++
السؤال الآن أي الطريقتين أسرع و لماذا ؟ :thumbup:
تحياتي ,,


