0Pricing
Zig Academy · درس

مؤشرات العنصر الواحد باستخدام *T

أشيروا إلى قيمة واحدة بالضبط

مؤشرات العنصر الواحد باستخدام *T درس مجاني في Zig Academy على CoddyKit. هذا هو الدرس 1 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Zig Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Zig Academy 4 دروس في المجموع.

المؤشر يشير

يحتفظ المؤشر بعنوان قيمة موجودة في مكان آخر من الذاكرة، بدلًا من الاحتفاظ بالقيمة نفسها. 📍

نوع ‎*T‎

يكون نوع المؤشر ذي العنصر الواحد هو *T، حيث تمثل T ما يشير إليه. لذلك يعني *i32 مؤشرًا إلى قيمة i32 واحدة.

var p: *i32 = undefined;

أخذ عنوان

استخدم العامل & أمام متغير للحصول على مؤشر إليه. والنتيجة هي العنوان الذي تُخزّن فيه تلك القيمة.

var x: i32 = 10;
const p = &x;

قيمة واحدة فقط

يضمن المؤشر ذو العنصر الواحد أنه يشير إلى قيمة واحدة بالضبط، وليس إلى مصفوفة. ويتتبع المصرّف ذلك نيابةً عنك.

للمؤشرات حجم

المؤشر مجرد عنوان، لذا يكون حجمه حجم كلمة الآلة، لا حجم T. وحتى الإشارة إلى بنية ضخمة لا تكلف سوى عنوان واحد.

قابل للتعديل افتراضيًا

يتيح لك *T العادي قراءة القيمة التي يشير إليها والكتابة فيها. وستضيف const لاحقًا لجعلها للقراءة فقط.

var n: i32 = 1;
const p: *i32 = &n;

المؤشرات تشارك ولا تنسخ

يؤدي تمرير مؤشر إلى دالة إلى مشاركة القيمة الأصلية، ولذلك تظهر التغييرات التي تُجرى من خلاله للمتصل.

fn bump(p: *i32) void {
    p.* += 1;
}

عنوان قيمة const

عند أخذ &x من قيمة const تحصل على *const i32، لأن Zig لن يسمح لك بالكتابة من خلال مؤشر إلى بيانات غير قابلة للتغيير.

const x: i32 = 5;
const p = &x;

المؤشرات لا تكون فارغة أبدًا

لا يمكن لمؤشر Zig العادي أن يكون فارغًا أبدًا. وإذا كان من الممكن غياب قيمة، فعليك استخدام مؤشر اختياري مثل ?*T.

استنتاج النوع مفيد

عندما تكتب const p = &x، يستنتج Zig نوع المؤشر من x، لذا نادرًا ما تضطر إلى كتابة *i32 يدويًا.

var score: u8 = 42;
const p = &score;

لماذا نستخدم المؤشرات

تتيح لك المؤشرات تعديل قيمة في مكانها وتجنب نسخ البيانات الكبيرة، وهو أمر أساسي في تحكم Zig الصريح منخفض المستوى.

تحقق سريع

تريد أن تغيّر دالة متغيرًا يملكه المتصل. ما نوع المعامل الذي ينبغي استخدامه؟

مراجعة

يحتفظ المؤشر ذو العنصر الواحد ‎*T‎ بعنوان قيمة واحدة بالضبط، ويُؤخذ باستخدام &، ولا يكون فارغًا أبدًا، ويتيح مشاركة البيانات بدلًا من نسخها. 🎯

الأسئلة الشائعة

هل درس «مؤشرات العنصر الواحد باستخدام *T» مجاني؟

نعم — نص درس «مؤشرات العنصر الواحد باستخدام *T» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Zig Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Zig Academy 4 دروس في المجموع.

ماذا ستتعلم في «مؤشرات العنصر الواحد باستخدام *T»؟

أشيروا إلى قيمة واحدة بالضبط تتمرن على Zig Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Zig Academy؟

لا تُشترط خبرة سابقة. Zig Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 1 من أصل 4.

كم من الوقت يستغرق درس «مؤشرات العنصر الواحد باستخدام *T»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Zig Academy هذا؟

نعم. كل درس في Zig Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. مؤشرات العنصر الواحد باستخدام *T
  2. إلغاء الإشارة باستخدام ptr.*
  3. مؤشرات العناصر المتعددة [*]T
  4. المؤشرات الثابتة والمحاذاة
← العودة إلى Zig Academy