معامل العنوان (Address-Of)
جزء من قسم Logic & Flow في رحلة C++ على Coddy — الدرس 2 من 56.
الآن بعد أن فهمت ما هو المؤشر (pointer)، عليك أن تتعلم كيفية الحصول على العنون المصدري لمتغير في الذاكرة. هنا يأتي دور عامل العنوان (&) المعروف بـ address-of operator.
يُوضع عامل العنوان & قبل اسم المتغير لاسترجاع عنوان ذاكرته. عندما تستخدم &variable_name، فإن ذلك يُرجع الموقع في الذاكرة الذي تُخزن فيه تلك المتغير.
int number = 42;
int* ptr = &number; // ptr الآن يخزن عنوان numberفي هذا المثال، يحصل &number على عنوان الذاكرة الخاص بالمتغير number، ونقوم بتعيين هذا العنوان إلى المؤشر ptr الخاص بنا. لا يحتوي المؤشر على القيمة 42 - بل يحتوي على العنوان الذي تم تخزين القيمة 42 فيه.
هذا الربط بين المتغير والمؤشر الخاص به أمر أساسي للتعامل مع الذاكرة بشكل مباشر. بمجرد أن يكون لديك مؤشر يقوم بتخزين عنوان (address)، يمكنك استخدامه للوصول إلى المتغير الأصلي أو تعديله بشكل غير مباشر.
التحدي
سهلscore وتهيئته بالقيمة 85.
أنشئ مؤشرًا باسم scorePtr يقم بـ stores عنوان الذاكرة الخاص بالمتغير score باستخدام معامل العنوان.
اطبع عنوان الذاكرة المخزن في المؤشر باستخدام التنسيق التالي:
Address: 0x...0x7fff5fbff6ac، يجب أن يكون خرجك كالتالي:
Address: 0x7fff5fbff6ac0x هي جزء من التمثيل الست عشري القياسي لعنوان الذاكرة في C++.جرّب بنفسك
#include <iostream>
using namespace std;
int main() {
// TODO: اكتب الكود الخاص بك أدناه
return 0;
}يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس Logic & Flow
1المؤشرات والذاكرة
ما هو المؤشر؟معامل العنوان (Address-Of)معامل الوصول للقيمة (Dereference)المؤشرات الفارغة (Null Pointers)المؤشرات والمصفوفاتالذاكرة الديناميكية باستخدام 'new'تحرير الذاكرة باستخدام 'delete'مراجعة - تمارين على المؤشرات2المتجهات (المصفوفات الديناميكية)
مقدمة إلى std::vectorإنشاء Vectorإضافة العناصرالوصول إلى العناصرحجم الـ Vectorالتكرار باستخدام For Loopالـ Range-Based For Loopإزالة العناصرملخص - عمليات الـ Vector