0Pricing
Zig Academy · บทเรียน

อาร์เรย์ขนาดคงที่

ประกาศและเข้าถึงอาร์เรย์ที่กำหนดขนาดตอนคอมไพล์

อาร์เรย์ขนาดคงที่ เป็นบทเรียน 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 ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. อาร์เรย์ขนาดคงที่
  2. สไลซ์: พอยน์เตอร์บวกความยาว
  3. การตัดสไลซ์ด้วย array[start..end]
  4. การวนผ่านและแก้ไขสไลซ์
← กลับไปที่ Zig Academy