aboutsummaryrefslogtreecommitdiff
path: root/exercises
diff options
context:
space:
mode:
Diffstat (limited to 'exercises')
-rw-r--r--exercises/052_slices.zig10
1 files changed, 7 insertions, 3 deletions
diff --git a/exercises/052_slices.zig b/exercises/052_slices.zig
index 98177cd..05abe8d 100644
--- a/exercises/052_slices.zig
+++ b/exercises/052_slices.zig
@@ -17,11 +17,12 @@
//
// const foo = digits[0..1]; // 0
// const bar = digits[3..9]; // 3 4 5 6 7 8
+// const bar = digits[5..9]; // 5 6 7 8
// const all = digits[0..]; // 0 1 2 3 4 5 6 7 8 9
//
-// As you can see, a slice [x..y] defines a first item by index x and
-// a length y (where y-1 is the index of the last item). Leaving y off
-// gives you the rest of the items.
+// As you can see, a slice [x..y] starts with the index of the
+// first item at x and the last item at y-1. You can leave the y
+// off to get "the rest of the items".
//
// Notice that the type of a slice on an array of u8 items is []u8.
//
@@ -47,3 +48,6 @@ fn printHand(hand: ???) void {
std.debug.print("{u} ", .{h});
}
}
+//
+// Fun fact: Under the hood, slices are stored as a pointer to
+// the first item and a length.