Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

معامل العنوان (Address-Of)

جزء من قسم Fundamentals في رحلة GO على Coddy — الدرس 62 من 109.

يقوم عامل العنوان (&) بجلب عنوان الذاكرة لمتغير ما. هذه هي الطريقة التي ننشئ بها المؤشرات (pointers) في لغة Go.

أنشئ متغيرًا واحصل على عنوان ذاكرته:

func main() {
    number := 42
    addressOfNumber := &number
    
    fmt.Println("Value:", number)
    fmt.Println("Address:", addressOfNumber)
}

يوضح المخرج القيمة وعنوان الذاكرة الخاص بها:

Value: 42
Address: 0xc000018030

العنوان (مثل 0xc000018030) هو رقم سداسي عشري يمثل موقع الذاكرة حيث يتم تخزين القيمة. سيكون هذا العنوان مختلفاً في كل مرة تقوم فيها بتشغيل البرنامج.

challenge icon

التحدي

مبتدئ
في هذا التحدي، ستتدرب على استخدام عامل العنوان (&) في لغة Go. يقوم عامل العنوان بإرجاع عنوان الذاكرة لمتغير ما، وهو المكان الذي يتم فيه تخزين قيمة المتغير في ذاكرة الكمبيوتر.

مهمتك هي استخدام عامل العنوان للحصول على عنوان الذاكرة للمتغير المقدم وتخزينه في متغير المؤشر الذي تم التصريح عنه بالفعل.

ورقة مرجعية

يحصل عامل العنوان (&) على عنوان الذاكرة لمتغير ويُستخدم لإنشاء المؤشرات في لغة Go.

number := 42
addressOfNumber := &number

fmt.Println("Value:", number)
fmt.Println("Address:", addressOfNumber)

يتم عرض العنوان كرقم سداسي عشري (مثل 0xc000018030) يمثل موقع الذاكرة حيث يتم تخزين القيمة. سيكون هذا العنوان مختلفاً في كل مرة تقوم فيها بتشغيل البرنامج.

جرّب بنفسك

package main

import "fmt"

func main() {
	// هذا هو متغيرنا النموذجي
	name := "Gopher"
	
	// هذا يعلن عن متغير مؤشر لتخزين عنوان سلسلة نصية
	var namePointer *string
	
	// TODO: استخدم عامل العنوان (&) للحصول على عنوان الذاكرة لـ 'name'
	// وتخزينه في متغير 'namePointer'
	
	// طباعة القيمة التي يشير إليها المؤشر
	fmt.Printf("The value at that memory address is: %v\n", *namePointer)
}
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس Fundamentals