array[start..end] ile Dilimleme
Kopyalama yapmadan alt görünümler oluşturun.
array[start..end] ile Dilimleme, CoddyKit'te ücretsiz bir Zig Academy dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Zig Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Zig Academy kursu toplamda 4 dersten oluşur.
Bu dersin bazı bölümleri henüz çevrilmemiş olup İngilizce olarak gösterilmektedir.
Carving Out a View
Sometimes you want only part of an array. Slicing lets you grab a sub-range as a new slice without copying any elements. ✂️
The Range Syntax
Write the start and end inside brackets joined by two dots: array[start..end]. This produces a slice over those positions.
const part = data[1..3];End Is Exclusive
The end index is exclusive, so array[1..3] includes positions 1 and 2 but stops before 3. The result has a length of 2.
Slice to the End
Leave the end off to run all the way to the last element. data[2..] means everything from index 2 onward.
const tail = data[2..];Slice the Whole Thing
Using [0..] turns an entire array into a slice. It is the common way to hand a full array to slice-taking code.
const all = data[0..];No Copy Happens
Slicing only computes a new pointer and length. The elements stay shared with the original array, so it is fast and allocation-free.
Slicing a Slice
You can slice a slice just like an array. The new range is relative to the slice's own start, narrowing the view further.
const inner = part[0..1];Out-of-Range Is Caught
If start or end falls outside the data, safe builds panic at runtime. This stops you from reading memory you never owned.
Compile-Time Slices
When the bounds are known at compile time, the result can be a pointer to an array with a fixed length baked into its type.
Sentinel-Terminated Slices
Add a terminator with [start..end :0] to guarantee a trailing zero. This is handy when passing strings to C code.
const cstr = buf[0..n :0];Length from the Range
A slice's length is simply end minus start. So data[2..5] always yields a slice whose len is exactly 3.
const three = data[2..5]; // len == 3Quick Check
You have const data = [_]i32{ 0, 1, 2, 3, 4 }. What is the length of data[1..4]?
Recap
The array[start..end] syntax carves a sub-view: end is exclusive, omit it for the tail, nothing is copied, and bounds stay checked. 🎯
Sıkça Sorulan Sorular
“array[start..end] ile Dilimleme” dersi ücretsiz mi?
Evet — “array[start..end] ile Dilimleme” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Zig Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Zig Academy kursu toplamda 4 dersten oluşur.
“array[start..end] ile Dilimleme” dersinde ne öğreneceğim?
Kopyalama yapmadan alt görünümler oluşturun. Zig Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
Zig Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te Zig Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.
“array[start..end] ile Dilimleme” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu Zig Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her Zig Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Sabit Boyutlu Diziler
- Dilimler: Bir İşaretçi ve Uzunluk
- array[start..end] ile Dilimleme
- Dilimler Üzerinde Yineleme ve Değişiklik Yapma