• 0

ما الفرق بين const int* و const int * const و int const * في السي بلس بلس ؟

دائما ما أخطئ في استخدام const int* و const int * const و int const * في السي بلس بلس فهل هنالك شرح لهذه التعريفات لأعرف ما يمكنني فعله بكل واحدة وما لا يمكنني ؟

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

سأحاول شرح معاني مصطلحات المؤشرات بطريقة بسيطة:

  • *int : مؤشر إلى int.
  • * int const  : مؤشر إلى int ثابتة.
  • int * const : مؤشر ثابت إلى int.
  • int const * const : مؤشر ثابت إلى int ثابتة.

الثابت الأول يمكنك تغيير اتجاهه وسيبقى نفسه كالتالي:

  • * const int * == int const
  • const int * const == int const * const

هنالك أشياء أخرى يمكنك القيام بها وهي:

  • ** int  : مؤشر إلى مؤشر إلى int.
  • int ** const : مؤشر ثابت إلى مؤشر إلى int.
  • * int * const  : مؤشر إلى مؤشر ثابت إلى int.
  • ** int const  : مؤشر إلى مؤشر إلى int ثابتة.
  • int * const * const : مؤشر ثابت إلى مؤشر ثابت إلى int.

المصدر

تمّ تعديل بواسطة هشام رزق الله

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن