mirror of
https://codeberg.org/andyscott/ziglings.git
synced 2024-12-22 06:03:09 -05:00
"Multi pointers" are now "many pointers"
TypeInfo.Pointer.Size says "many", so there we are!
This commit is contained in:
parent
4a421cca28
commit
784b66ffcf
5 changed files with 11 additions and 11 deletions
|
@ -129,7 +129,7 @@ Planned exercises:
|
|||
* [x] Optionals
|
||||
* [x] Struct methods
|
||||
* [x] Slices
|
||||
* [x] Multi pointers
|
||||
* [x] Many pointers
|
||||
* [ ] Unions
|
||||
* [ ] Numeric types (integers, floats)
|
||||
* [ ] Labelled blocks and loops
|
||||
|
|
|
@ -277,7 +277,7 @@ const exercises = [_]Exercise{
|
|||
.output = "'all your base are belong to us.' 'for great justice.'",
|
||||
},
|
||||
.{
|
||||
.main_file = "54_multipointers.zig",
|
||||
.main_file = "54_manypointers.zig",
|
||||
.output = "Memory is a resource.",
|
||||
},
|
||||
};
|
||||
|
|
|
@ -18,19 +18,19 @@ pub fn main() void {
|
|||
//
|
||||
// const zen12: []const u8 = "...";
|
||||
//
|
||||
// Now let's turn this into a "multi pointer":
|
||||
const zen_multiptr: [*]const u8 = zen12;
|
||||
// Now let's turn this into a "many pointer":
|
||||
const zen_manyptr: [*]const u8 = zen12;
|
||||
|
||||
// It's okay to access zen_multiptr just like an array or slice as
|
||||
// It's okay to access zen_manyptr just like an array or slice as
|
||||
// long as you keep track of the length yourself!
|
||||
//
|
||||
// A "string" in Zig is a pointer to an array of const u8 values
|
||||
// or a slice of const u8 values, into one, as we saw above). So,
|
||||
// we could treat a "multi pointer" of const u8 a string as long
|
||||
// we could treat a "many pointer" of const u8 a string as long
|
||||
// as we can CONVERT IT TO A SLICE. (Hint: we do know the length!)
|
||||
//
|
||||
// Please fix this line so the print below statement can print it:
|
||||
const zen12_string: []const u8 = zen_multiptr;
|
||||
const zen12_string: []const u8 = zen_manyptr;
|
||||
|
||||
// Here's the moment of truth!
|
||||
std.debug.print("{s}\n", .{zen12_string});
|
4
patches/patches/54_manypointers.patch
Normal file
4
patches/patches/54_manypointers.patch
Normal file
|
@ -0,0 +1,4 @@
|
|||
33c33
|
||||
< const zen12_string: []const u8 = zen_manyptr;
|
||||
---
|
||||
> const zen12_string: []const u8 = zen_manyptr[0..21];
|
|
@ -1,4 +0,0 @@
|
|||
33c33
|
||||
< const zen12_string: []const u8 = zen_multiptr;
|
||||
---
|
||||
> const zen12_string: []const u8 = zen_multiptr[0..21];
|
Loading…
Reference in a new issue