كل ما تحتاج لمعرفته حول المؤشرات في ج



ستقدم لك هذه المقالة موضوعًا يعتقد أنه صعب التعلم ، ونحن نشير إلى موضوع المؤشرات في لغة C.

أثناء تعلم لغة C ، ربما تكون قد صادفت مصطلح 'المؤشرات' ، وسمعت غالبًا أنه مفهوم يصعب فهمه. المؤشرات مفيدة في مهام البرمجة المختلفة ، وليس من الصعب فهمها. ستقدم لك هذه المقالة مؤشرات في لغة C وتخبرك لماذا ليس من الصعب تعلمها كما تبدو.

فيما يلي المؤشرات التي تم تناولها في هذه المقالة ،





  1. ما هو المؤشر؟
  2. العوامل المرجعية وإلغاء المرجع
  3. أنواع المؤشرات
  4. كيفية استخدام المؤشر

لنبدأ بالجزء الأول من هذا المؤشر في مقالة C ،

مؤشرات في ج

ما هو المؤشر؟

المؤشر هو متغير قادر على تخزين عنوان المتغير. الآن ، قد تسأل ما فائدة ذلك؟ بشكل أساسي ، يشير المؤشر إلى موقع ذاكرة المتغير الذي تم توفير عنوانه. تساعد هذه الخاصية في تخصيص الذاكرة الديناميكي ، وهو جانب مهم من جوانب البرمجة.



دعنا نفهم أنه بناء الجملة ونلقي نظرة على مثال

ما هو نموذج البرمجة القائم على بوجو
Data_Type * pointer_name

مثال: int * ptr

فيما يلي الجزء التالي في هذه المؤشرات في مقالة سي



العوامل المرجعية وإلغاء المرجع

قبل التعمق في مفهوم المؤشر ، دعونا نفهم بعض الأساسيات التي ستساعدنا لاحقًا. أثناء استخدام المؤشرات ، ستستخدم بالتأكيد عوامل التشغيل '&' و '*'. حان الوقت الآن لفهم معناها واستخدامها.

أولاً ، دعنا نفهم عامل التشغيل المرجعي الذي يُطلق عليه غالبًا اسم عامل التشغيل 'عنوان'. يؤدي استخدام عامل (علامة العطف) مع متغير إلى إرجاع موقع ذاكرة يُعرف أيضًا باسم عنوان المتغير المحدد.

مثال

ثنائي إلى عشري محول جافا
int * ptr int a ptr = & a

يتم تخزين عنوان المتغير 'a' في متغير ptr.

الآن ، دعنا نفهم عامل التشغيل De-References أو 'Value at' الذي يُشار إليه بعلامة النجمة (*). يساعد في استرداد القيمة من موقع الذاكرة المخزنة في متغير المؤشر

مثال

int * ptr int a * ptr = & a printf ('قيمة a =٪ dn' ، * ptr)

أنواع المؤشر * المستخدم أثناء التصريح عن المؤشر ليس لغرض إزالة الإشارة ، ولكنه يخبر المترجم أن المتغير المحدد هو مؤشر.يطبع بيان الطباعة أعلاه القيمة الموجودة في موقع الذاكرة ويشار إلى موقع الذاكرة هذا بالمؤشر. أي قيمة المتغير 'أ'.

هناك عدة أنواع من المؤشرات التي تختلف بناءً على طريقة استخدامها في البرنامج.سنلقي نظرة على بعض الأنواع الأكثر استخدامًا.

مؤشر فارغ

يتم تعيين قيمة فارغة لمؤشر عندما لا تكون متأكدًا من العنوان الذي سيتم تعيينه. يمكن القيام بذلك عن طريق تعيين قيمة 'NULL' لمؤشر في وقت الإعلان. قيمة هذا المؤشر هي 0.

int * ptr = NULL

مؤشر وايلد

يتم إنشاء مؤشر شامل من خلال عدم تعيين أي قيمة لمتغير المؤشر. يجب استخدامه بعناية لأنه قد يؤدي إلى نتائج غير متوقعة.

المؤشر المتدلي

عندما يشير المؤشر إلى متغير محذوف أو ذاكرة غير مخصصة ، يُعرف المؤشر بالمؤشر المتدلي.يشير هذا المؤشر إلى موقع ذاكرة غير موجود. دعونا نلقي نظرة على الجزء التالي من هذه المؤشرات في مقالة سي

كيفية استخدام المؤشر

الآن لدينا فهم موجز لمشغلي المرجع و dereference. في هذا القسم ، سوف نفهم كيفية استخدام المؤشرات. حتى الآن تعلمنا كيفية الإعلان عن المؤشر واستخدامه في بعض العمليات الأساسية. في هذه المرحلة ، لدينا ما يكفي من المعرفة لاستخدام المؤشرات لمهام البرمجة المذهلة حقًا عن طريق إجراء عمليات حسابية عليها.

ما هو الفرق بين التحميل الزائد والتجاوز

عادة ، يتم تنفيذ هذه العمليات على المصفوفات. يمكن أن يمنحنا طرح عنوانين المسافة بين موقعين للذاكرة.

int main () {int First_array [10] = {1، 2، 3، 4، 5، 6، 7، 8، 9، 10} / * المصفوفة التي سنجري عليها العمليات * / int * ptr / * المؤشر * / ptr = First_array / * قم بتعيين عنوان المصفوفة لمتغير المؤشر * / لـ (int i = 0 i<10 i++) /*Performing operations*/ { printf('Value of *ptr variable = %dn', *ptr) printf('Value of ptr variable = %pnn', ptr) ptr++ } } 

انتاج |

الإخراج - المؤشرات في C - Edurekaحاول تنفيذ الكود بنفسك وإجراء عمليات حسابية مختلفة.دعونا نستخدم المؤشرات مع السلاسل.

#include #include int main () {char str [] = 'Hello World' / * إنشاء مصفوفة * / char * p / * Pointer * / p = str printf ('طباعة جميع الأحرف في السلسلة') p = str لـ (int i = 0i


بهذا نصل إلى نهاية هذه المدونة حول 'Pointers In C'. آمل أن تكون قد وجدت هذه المعلومات مفيدة ومفيدة ، ترقبوا المزيد من البرامج التعليمية حول مواضيع مماثلة. يمكنك أيضًا مراجعة برنامجنا التدريبي
احصل على معرفة متعمقة حول jQuery مع تطبيقاته المختلفة ، يمكنك ذلك للتدريب المباشر عبر الإنترنت مع دعم على مدار الساعة طوال أيام الأسبوع وإمكانية الوصول مدى الحياة.قم بتنفيذ الكود أعلاه بسلاسل وتعديلات مختلفة. الآن ، لدينا فهم جيد لجميع المفاهيم الأساسية المتعلقة بالمؤشر.

لديك سؤال لنا؟ أذكرها في قسم التعليقات في هذه المدونة وسنعاود الاتصال بك.