المؤشرات في Zig
تقوم المؤشرات بتخزين عنوان الذاكرة لقيمة معينة. مؤشرات Zig آمنة ولكنها صريحة.
*T: مؤشر لعنصر واحد.[*]T: مؤشر لعدة عناصر (يشبه المصفوفة).
zig var x: i32 = 42; const ptr = &x;
// استخراج القيمة (Dereferencing) std.debug.print("Value: {d}\n", .{ptr.*});
// تغيير القيمة عبر المؤشر ptr.* = 100;
لا تسمح Zig بالمؤشرات الفارغة (null pointers) افتراضياً. إذا كنت بحاجة لمؤشر يقبل القيمة الفارغة، استخدم ?*T.