diff options
Diffstat (limited to 'exercises/28_defer2.zig')
-rw-r--r-- | exercises/28_defer2.zig | 37 |
1 files changed, 0 insertions, 37 deletions
diff --git a/exercises/28_defer2.zig b/exercises/28_defer2.zig deleted file mode 100644 index 6943012..0000000 --- a/exercises/28_defer2.zig +++ /dev/null @@ -1,37 +0,0 @@ -// -// Now that you know how "defer" works, let's do something more -// interesting with it. -// -const std = @import("std"); - -pub fn main() void { - const animals = [_]u8{ 'g', 'c', 'd', 'd', 'g', 'z' }; - - for (animals) |a| printAnimal(a); - - std.debug.print("done.\n", .{}); -} - -// This function is _supposed_ to print an animal name in parentheses -// like "(Goat) ", but we somehow need to print the end parenthesis -// even though this function can return in four different places! -fn printAnimal(animal: u8) void { - std.debug.print("(", .{}); - - std.debug.print(") ", .{}); // <---- how!? - - if (animal == 'g') { - std.debug.print("Goat", .{}); - return; - } - if (animal == 'c') { - std.debug.print("Cat", .{}); - return; - } - if (animal == 'd') { - std.debug.print("Dog", .{}); - return; - } - - std.debug.print("Unknown", .{}); -} |