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

ما هو المؤشر؟

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

الـ مؤشر (pointer) هو متغير يخزن عنوان الذاكرة لمتغير آخر. تساعدنا المؤشرات في الوصول إلى المتغيرات أو تعديلها بشكل غير مباشر.

الإعلان عن متغير مؤشر: استخدم الرمز * قبل النوع للإعلان عن متغير يمكنه حمل مؤشر:

var pointerToInt *int       // يعلن عن متغير مؤشر يمكنه الإشارة إلى int
var pointerToString *string // يعلن عن متغير مؤشر يمكنه الإشارة إلى string

إنشاء مؤشر لمتغير موجود: استخدم معامل & (address-of) للحصول على عنوان الذاكرة لمتغير:

x := 10
pointerToX := &x  // pointerToX يحمل الآن عنوان الذاكرة لـ x
fmt.Println(pointerToX)

الوصول إلى القيمة التي يشير إليها المؤشر: استخدم عامل * (إلغاء المرجعية):

fmt.Println(*pointerToX)  // يطبع القيمة المخزنة في العنوان

سيكون الناتج:

0xc000018030  // عنوان الذاكرة (سيختلف عنوانك)
10           // القيمة الموجودة في ذلك العنوان

ورقة مرجعية

المؤشر (pointer) هو متغير يخزن عنوان الذاكرة لمتغير آخر.

استخدم عامل التشغيل & (address-of) للحصول على مؤشر لمتغير:

x := 10
pointerToX := &x  // pointerToX يحمل عنوان الذاكرة لـ x

استخدم عامل التشغيل * (dereference) للوصول إلى القيمة التي يشير إليها المؤشر:

fmt.Println(*pointerToX)  // يطبع القيمة المخزنة في العنوان

جرّب بنفسك

لا يتضمّن هذا الدرس تحدّيًا برمجيًا.

quiz iconاختبر نفسك

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

جميع دروس Fundamentals