مراجعة - تمارين على المؤشرات
جزء من قسم Logic & Flow في رحلة C++ على Coddy — الدرس 8 من 56.
التحدي
سهلقم بإنشاء برنامج يوضح سير عمل المؤشر (pointer) بالكامل من خلال التصريح عن متغير، وإنشاء مؤشر يشير إليه، وتعديل قيمة المتغير من خلال المؤشر.
سيتم توفير المدخلات التالية:
- عدد صحيح يمثل القيمة الأولية لمتغير
- عدد صحيح يمثل القيمة الجديدة التي سيتم تعيينها من خلال المؤشر
يجب أن يقوم برنامجك بما يلي:
- التصريح عن متغير صحيح باسم
scoreوتهيئته بقيمة المدخل الأول - إنشاء مؤشر باسم
scorePtrيشير إلى المتغيرscoreباستخدام عامل العنوان (address-of operator) - طباعة القيمة الأصلية لـ
scoreمن خلال الوصول إليها مباشرة (ليس من خلال المؤشر) - استخدام عامل إلغاء المرجعية (dereference operator) لتغيير قيمة
scoreإلى قيمة المدخل الثاني من خلال المؤشر - طباعة القيمة المعدلة لـ
scoreمن خلال الوصول إليها مباشرة مرة أخرى - طباعة عنوان الذاكرة المخزن في المؤشر
استخدم تنسيق المخرجات الدقيق التالي:
Original score: [original value]
Modified score: [modified value]
Pointer address: [memory address]جرّب بنفسك
#include <iostream>
using namespace std;
int main() {
// قراءة قيم المدخلات
int initialValue, newValue;
cin >> initialValue;
cin >> newValue;
// TODO: اكتب كودك أدناه
// 1. قم بالتصريح عن متغير صحيح باسم 'score' وقم بتهيئته بـ initialValue
// 2. قم بإنشاء مؤشر باسم 'scorePtr' يشير إلى متغير score
// 3. اطبع القيمة الأصلية، وقم بالتعديل من خلال المؤشر، واطبع النتائج
return 0;
}جميع دروس Logic & Flow
1المؤشرات والذاكرة
ما هو المؤشر؟معامل العنوان (Address-Of)معامل الوصول للقيمة (Dereference)المؤشرات الفارغة (Null Pointers)المؤشرات والمصفوفاتالذاكرة الديناميكية باستخدام 'new'تحرير الذاكرة باستخدام 'delete'مراجعة - تمارين على المؤشرات2المتجهات (المصفوفات الديناميكية)
مقدمة إلى std::vectorإنشاء Vectorإضافة العناصرالوصول إلى العناصرحجم الـ Vectorالتكرار باستخدام For Loopالـ Range-Based For Loopإزالة العناصرملخص - عمليات الـ Vector