mirror of
https://codeberg.org/ziglings/exercises.git
synced 2026-06-08 07:50:00 +00:00
Merge pull request 'added expalantion for const pointer' (#428) from pointer into main
Reviewed-on: https://codeberg.org/ziglings/exercises/pulls/428
This commit is contained in:
@@ -27,3 +27,19 @@ pub fn main() void {
|
|||||||
|
|
||||||
std.debug.print("a: {}, b: {}\n", .{ a, b.* });
|
std.debug.print("a: {}, b: {}\n", .{ a, b.* });
|
||||||
}
|
}
|
||||||
|
//
|
||||||
|
// A look into the future:
|
||||||
|
// When you allocate memory, you store the returned address in
|
||||||
|
// a const var. The pointer itself never changes — it always
|
||||||
|
// refers to the same allocation — but you can still read and
|
||||||
|
// write the data it points to.
|
||||||
|
//
|
||||||
|
// Example:
|
||||||
|
//
|
||||||
|
// const buf = try allocator.alloc(u8, 1024);
|
||||||
|
// buf[0] = 42; // fine: the *contents* are mutable
|
||||||
|
//
|
||||||
|
// Note:
|
||||||
|
// Passing this pointer to a function is cheap: it's just an address
|
||||||
|
// copied on the stack. The caller can work with the data without
|
||||||
|
// needing to know where it came from or how it was allocated.
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
--- exercises/040_pointers2.zig 2023-10-03 22:15:22.122241138 +0200
|
--- exercises/040_pointers2.zig 2026-05-22 21:57:28.601255748 +0200
|
||||||
+++ answers/040_pointers2.zig 2023-10-05 20:04:07.022766257 +0200
|
+++ answers/040_pointers2.zig 2026-05-22 21:57:27.672235943 +0200
|
||||||
@@ -23,7 +23,7 @@
|
@@ -23,7 +23,7 @@
|
||||||
|
|
||||||
pub fn main() void {
|
pub fn main() void {
|
||||||
|
|||||||
Reference in New Issue
Block a user