ما هو عنوان الذاكرة في C ++ وكيف يمكن العثور عليه؟

Ma Hw Nwan Aldhakrt Fy C Wkyf Ymkn Al Thwr Lyh



في C ++ ، عنوان الذاكرة هو موقع متغير في ذاكرة الوصول العشوائي حيث يتم تخزين البيانات. ذاكرة الوصول العشوائي (ذاكرة الوصول العشوائي) هي نوع من ذاكرة الكمبيوتر التي يمكن قراءتها وتعديلها في أي تسلسل وتستخدم بشكل متكرر لتخزين بيانات التشغيل ورموز الجهاز. في برامجنا ، يتم تخزين كل متغير في ذاكرة الوصول العشوائي ويشغل مساحة في الذاكرة. هذه المتغيرات لها موقع ذاكرة محدد ، ولكل منها عنوان يمكن استرجاعه من خلال عامل العطف (&) . يمثل هذا المشغل عنوان ذاكرة المتغير ويفيد في الوصول إلى البيانات المخزنة في ذلك الموقع ومعالجتها.

تقدم هذه المقالة دليلاً للعثور على عنوان ذاكرة متغير في C ++.

كيفية تحديد عنوان ذاكرة المتغير في C ++

في لغة ++ C ، هناك طريقتان لتحديد عنوان ذاكرة المتغير:







الطريقة الأولى: ابحث عن عنوان ذاكرة المتغير باستخدام 'عنوان' & المشغل

عندما يُطلب منا تحديد عنوان ذاكرة متغير ، يمكننا استخدام الامتداد 'عنوان المشغل' (&) ، الذي يعرض عنوان المتغير. لعرض عنوان المتغير ، استخدم '&' مع اسم المتغير.



دعنا نستخدم برنامج مثال لتوضيح هذا:



# تضمين

استخدام اسم للمحطة ؛

int رئيسي ( )

{

int عدد 1 ؛

يطفو عدد 2 ؛

سلسلة سلسلة ؛

كوت << 'الرجاء إدخال قيمة عدد صحيح للعثور على عنوان الذاكرة الخاص به:' ؛

يتناول الطعام >> عدد 1 ؛

كوت << 'الرقم الذي تم إدخاله هو:' << عدد 1 << إندل ؛

كوت << 'عنوان ال ' << عدد 1 << ' يكون: ' << & عدد 1 << إندل ؛

كوت << 'الرجاء إدخال قيمة عشرية للعثور على عنوان الذاكرة الخاص بها:' ؛

يتناول الطعام >> عدد 2 ؛

كوت << 'الرقم الذي تم إدخاله هو:' << عدد 2 << إندل ؛

كوت << 'عنوان ال ' << عدد 2 << ' يكون :' << & عدد 2 << إندل ؛

كوت << 'الرجاء إدخال سلسلة للعثور على عنوان الذاكرة الخاص بها:' ؛

يتناول الطعام >> شارع ؛

ل ( int أنا = 0 ؛ أنا < شارع. طول ( ) ؛ ++ أنا )

كوت << 'عنوان ال ' << شارع [ أنا ] << ' يكون :' << ( فارغ * ) & شارع [ أنا ] << إندل ؛

يعود 0 ؛

}

تسمياتنا المتغيرة في البرنامج أعلاه هي num1 و num2 و str ، مع أنواع بيانات int و float و string ، على التوالي. يتم استخدام عامل التشغيل '&' مع اسم المتغير للعثور على عنوان الذاكرة الخاص به. وتجدر الإشارة إلى أن الناتج الذي يوفر عنوان المتغير هو رقم يتم إنشاؤه عشوائيًا.





الطريقة الثانية: البحث عن عنوان ذاكرة متغير باستخدام مؤشر

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



دعونا نلقي نظرة على برنامج مثال للعثور على عنوان الذاكرة باستخدام المؤشر:

# تضمين

# تضمين <سلسلة>

استخدام اسم للمحطة ؛

int رئيسي ( ) {

int عدد 1 ؛

int * ptr_num1 = & عدد 1 ؛

يطفو عدد 2 ؛

يطفو * ptr_num2 = & عدد 2 ؛

سلسلة سلسلة ؛

كوت << 'الرجاء إدخال قيمة عدد صحيح للعثور على عنوان الذاكرة الخاص به:' ؛

يتناول الطعام >> عدد 1 ؛

كوت << 'الرقم الذي تم إدخاله هو:' << عدد 1 << إندل ؛

كوت << 'عنوان ال ' << عدد 1 << ' يكون: ' << ptr_num1 << إندل ؛

كوت << 'الرجاء إدخال قيمة عشرية للعثور على عنوان الذاكرة الخاص بها:' ؛

يتناول الطعام >> عدد 2 ؛

كوت << 'الرقم الذي تم إدخاله هو:' << عدد 2 << إندل ؛

كوت << 'عنوان ال ' << عدد 2 << ' يكون: ' << ptr_num2 << إندل ؛

كوت << 'الرجاء إدخال سلسلة للعثور على عنوان الذاكرة الخاص بها:' ؛

يتناول الطعام >> شارع ؛

ل ( int أنا = 0 ؛ أنا < شارع. طول ( ) ؛ أنا ++ ) {

كوت << 'عنوان ال ' << شارع [ أنا ] << ' يكون: ' << ( فارغ * ) & شارع [ أنا ] << إندل ؛

}

يعود 0 ؛

}

تسميات المتغيرات في هذا البرنامج هي num1 و num2 و str ، مع أنواع بيانات int و float و string على التوالي. يتم تحديد العنوان المتغير باستخدام المؤشر مع اسم المتغير. وتجدر الإشارة إلى أن الناتج الذي يوفر عنوان المتغير هو رقم يتم إنشاؤه عشوائيًا.

خاتمة

عندما نعلن عن متغير من أي نوع بيانات في C ++ ، يتم تعيين موقع ذاكرة له بواسطة نظام التشغيل. موقع الذاكرة هذا هو رقم عشوائي لا يمكن أن يكون سالبًا ويعرف باسم عنوان المتغير. يمكن أن تكون معرفة عنوان ذاكرة المتغير مفيدًا في سيناريوهات برمجة معينة. في هذه المقالة ، أوضحنا طريقتين ، وهما عنوان المشغل (&) و متغيرات المؤشر ، لتحديد عنوان ذاكرة متغير في C ++ مع أمثلة بسيطة.