อาร์เรย์ขนาดคงที่
ประกาศและเข้าถึงอาร์เรย์ที่กำหนดขนาดตอนคอมไพล์
อาร์เรย์ขนาดคงที่ เป็นบทเรียน Zig Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Zig Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Zig Academy มีบทเรียนทั้งหมด 4 บทเรียน
อาร์เรย์เก็บอะไรไว้
อาร์เรย์เก็บค่าจำนวนคงที่ที่มีชนิดเดียวกัน โดยวางเรียงต่อกันในบล็อกหน่วยความจำเดียว 📦
ความยาวเป็นค่าคงที่
ใน Zig ความยาวเป็นส่วนหนึ่งของชนิดอาร์เรย์และกำหนดขณะคอมไพล์ เมื่อประกาศแล้วจะเพิ่มหรือลดไม่ได้
การประกาศอาร์เรย์
เขียนจำนวนสมาชิกไว้ในวงเล็บเหลี่ยม แล้วตามด้วยชนิดของสมาชิก [3]i32 นี้เก็บจำนวนเต็มมีเครื่องหมายได้พอดีสามค่า
const nums = [3]i32{ 10, 20, 30 };ให้ Zig นับให้
ใช้เครื่องหมายขีดล่างแทนขนาด แล้วให้ Zig อนุมานจากค่าที่คุณระบุ ในที่นี้ [_]i32 จะกลายเป็นอาร์เรย์ที่มีสามสมาชิก
const nums = [_]i32{ 1, 2, 3 };ดัชนีเริ่มที่ศูนย์
เข้าถึงสมาชิกด้วยดัชนีในวงเล็บเหลี่ยม ดัชนีเริ่มที่ 0 ดังนั้น nums[0] จึงเป็นค่าแรกสุด
const first = nums[0];การขอความยาว
อาร์เรย์ทุกชุดเปิดเผยขนาดผ่านฟิลด์ len ค่านี้ทราบได้ขณะคอมไพล์และไม่เปลี่ยนแปลง
const count = nums.len; // 3มีการตรวจสอบขอบเขต
ระบบจะตรวจจับการอ่านเลยท้ายอาร์เรย์ให้คุณ ในการสร้างแบบปลอดภัย ดัชนีที่อยู่นอกขอบเขตจะทำให้เกิดข้อผิดพลาดร้ายแรงขณะรัน แทนที่จะทำให้ข้อมูลเสียหายโดยไม่แจ้งเตือน
เติมค่าหนึ่งค่าให้เต็มอาร์เรย์
ทำซ้ำสมาชิกเดียวให้ทั่วทั้งอาร์เรย์ด้วยตัวดำเนินการ ** วิธีนี้สร้างศูนย์ห้าค่าได้โดยไม่ต้องพิมพ์ทีละค่า
const zeros = [_]u8{0} ** 5;อาร์เรย์เป็นชนิดค่า
การกำหนดอาร์เรย์หนึ่งให้กับอีกอาร์เรย์จะคัดลอกสมาชิกทุกตัว อาร์เรย์ทั้งสองจึงเป็นอิสระต่อกัน การเปลี่ยนอาร์เรย์หนึ่งจะไม่กระทบอีกอาร์เรย์
การเปลี่ยนสมาชิก
ประกาศอาร์เรย์ด้วย var หากต้องการเปลี่ยนสมาชิกภายหลัง จากนั้นกำหนดค่าผ่านดัชนีเพื่ออัปเดตช่องใดช่องหนึ่ง
var scores = [_]i32{ 0, 0, 0 };
scores[1] = 99;อาร์เรย์ใช้ชนิดใดก็ได้
สมาชิกสามารถเป็นชนิดใดก็ได้ แม้กระทั่งอาร์เรย์อื่น [2][3]i32 คือกริดขนาดเล็กที่มีสองแถว แถวละสามจำนวนเต็ม
const grid = [2][3]i32{ .{ 1, 2, 3 }, .{ 4, 5, 6 } };ตรวจสอบอย่างรวดเร็ว
คุณประกาศ const nums = [_]i32{ 1, 2, 3 } ค่า nums.len เป็นเท่าใด
ทบทวน
อาร์เรย์ขนาดคงที่เก็บค่าชนิดเดียวกันไว้ด้วยกัน ความยาวเป็นส่วนหนึ่งของชนิดข้อมูล ดัชนีเริ่มที่ 0 และการเข้าถึงยังมีการตรวจสอบขอบเขต 🎯
คำถามที่พบบ่อย
บทเรียน “อาร์เรย์ขนาดคงที่” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “อาร์เรย์ขนาดคงที่” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Zig Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Zig Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “อาร์เรย์ขนาดคงที่”
ประกาศและเข้าถึงอาร์เรย์ที่กำหนดขนาดตอนคอมไพล์ คุณปฏิบัติ Zig Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Zig Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Zig Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน
บทเรียน “อาร์เรย์ขนาดคงที่” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Zig Academy นี้ได้ไหม
ได้ บทเรียน Zig Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ