اذهب إلى المحتوى

السؤال

نشر

أثناء تعلمي للغة السي بلس بلس وجدت عامل حسابي جديد وهو "-->”، ولقد قمت بتطبيق هذه الشيفرة البرمجية:
 

#include <stdio.h>
int main()
{
    int x = 10;
    while (x --> 0) // x goes to 0
    {
        printf("%d ", x);
    }
}

فحسب ما فهمته من هذه الشيفرة أن هذا العامل الحسابي يقوم بتحويل x إلى 0 عن طريق تخفيض قيمته -1 في كل مرة.
فهل هذه هي وظيفة "-->” في لغة السي بلس بلس ؟

Recommended Posts

  • 0
نشر

في الحقيقة إن "-->” ليس عامل حسابي واحد بل يتكون من عاملين منفصلين هما - - و > .

فالعامل الحسابي - - يقوم بخفض قيمة المتغير x بمقدار 1 وأما > فيقوم بمقارنة x مع قيمة المتغير x، وبما أننا قد وضعنا حلقة التكرارية while فإن البرنامج سيقوم في كل مرة بخفض قيمة x بمقدار 1 و يقوم بالمقارنة ثم يطبع النتيجة على الشاشة ولذلك ستجد أن البرنامج قد قام بكتابة جميع الأرقام من 10 إلى 0 تنازليا.

لفهم الدالة بشكل أفضل، يمكنك كتابة سطر الحلقة التكرارية كالتالي:

while( (x--) > 0 ) 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...