Zig Academy · Pelajaran

Menghiris dengan array[start..end]

Bina paparan kecil tanpa menyalin data.

Pelajaran 3 daripada 413 langkah

Menghiris dengan array[start..end] ialah pelajaran Zig Academy percuma di CoddyKit. Ini ialah pelajaran 3 daripada 4. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Zig Academy, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Zig Academy merangkumi sejumlah 4 pelajaran.

Membentuk Paparan

Kadangkala anda hanya mahukan sebahagian daripada tatasusunan. Pemotongan membolehkan anda mendapatkan subjulat sebagai slice baharu tanpa menyalin sebarang elemen. ✂️

Sintaks Julat

Tulis permulaan dan penghujung di dalam kurungan siku, dipisahkan oleh dua titik: array[start..end]. Ini menghasilkan slice merentasi kedudukan tersebut.

const part = data[1..3];

Penghujung Tidak Termasuk

Indeks penghujung adalah eksklusif, jadi array[1..3] merangkumi kedudukan 1 dan 2 tetapi berhenti sebelum 3. Hasilnya mempunyai panjang 2.

Slice hingga Penghujung

Biarkan penghujung kosong untuk meneruskan hingga elemen terakhir. data[2..] bermaksud segala-galanya bermula daripada indeks 2 dan seterusnya.

const tail = data[2..];

Slice Seluruh Tatasusunan

Menggunakan [0..] menukarkan seluruh tatasusunan menjadi slice. Inilah cara biasa untuk menyerahkan tatasusunan penuh kepada kod yang menerima slice.

const all = data[0..];

Tiada Penyalinan Berlaku

Pemotongan hanya mengira penuding dan panjang baharu. Elemen kekal dikongsi dengan tatasusunan asal, jadi proses ini pantas dan tidak memerlukan peruntukan memori.

Memotong Slice

Anda boleh memotong slice sama seperti tatasusunan. Julat baharu adalah relatif kepada permulaan slice itu sendiri, lalu mengecilkan lagi paparannya.

const inner = part[0..1];

Julat di Luar Sempadan Dikesan

Jika permulaan atau penghujung berada di luar data, binaan selamat akan mengalami panik semasa masa jalan. Ini menghalang anda daripada membaca memori yang tidak pernah anda miliki.

Slice Masa Kompilasi

Apabila sempadan diketahui pada masa kompilasi, hasilnya boleh menjadi penuding kepada tatasusunan dengan panjang tetap yang terbina dalam jenisnya.

Slice Berakhir dengan Penanda

Tambahkan penamat dengan [start..end :0] untuk menjamin sifar di hujung. Ini berguna apabila menghantar rentetan kepada kod C.

const cstr = buf[0..n :0];

Panjang daripada Julat

Panjang slice hanyalah end tolak start. Jadi data[2..5] sentiasa menghasilkan slice yang len-nya tepat 3.

const three = data[2..5]; // len == 3

Semakan Pantas

Anda mempunyai const data = [_]i32{ 0, 1, 2, 3, 4 }. Apakah panjang data[1..4]?

Ringkasan

Sintaks array[start..end] membentuk subpaparan: end adalah eksklusif, abaikannya untuk mendapatkan bahagian akhir, tiada apa-apa disalin dan sempadan kekal disemak. 🎯

Percuma untuk bermula

Pelajari Zig dengan tutor kecerdasan buatan — percuma

Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.

Kursus
30
Pelajaran
120

Soalan Lazim

Adakah pelajaran “Menghiris dengan array[start..end]” percuma?

Ya — teks penuh “Menghiris dengan array[start..end]” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus Zig Academy, tingkat taraf kepada CoddyKit PRO. Kursus Zig Academy merangkumi sejumlah 4 pelajaran.

Apakah yang akan saya pelajari dalam “Menghiris dengan array[start..end]”?

Bina paparan kecil tanpa menyalin data. Anda berlatih Zig Academy menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.

Adakah saya memerlukan pengalaman untuk memulakan Zig Academy?

Tiada pengalaman terdahulu diperlukan. Pembelajaran Zig Academy di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 3 daripada 4.

Berapa lamakah pelajaran “Menghiris dengan array[start..end]” diambil?

Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.

Bolehkah saya menulis dan menjalankan kod dalam pelajaran Zig Academy ini?

Ya. Setiap pelajaran Zig Academy menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.

Semua pelajaran dalam kursus ini

  1. Tatasusunan Saiz Tetap
  2. Slaid: Penuding Ditambah Panjang
  3. Menghiris dengan array[start..end]
  4. Melakukan Lelaran dan Mengubah Slaid
← Kembali ke Zig Academy