diff options
Diffstat (limited to '01_hello.zig')
-rw-r--r-- | 01_hello.zig | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/01_hello.zig b/01_hello.zig new file mode 100644 index 0000000..a77d919 --- /dev/null +++ b/01_hello.zig @@ -0,0 +1,47 @@ +// Oh no! This program is supposed to print "Hello world!" but it has some +// mistakes. Let's fix it. +// +// We're trying to import the Standard Library into the top level of our +// application. The standard library is not named "foo", it is named "std". +// +// Please correct the name in both places in the import here: +const foo = @import("foo"); + +// Zig applications start by calling a function named 'main'. It needs to be +// public so that it is accessible outside our file! +// +// Public functions are declared with the 'pub' keyword like so: +// +// pub fn my_function() void { ... } +// +// Please make the main() function public: +fn main() void { + + // The easiest way to display our "Hello world" message in the + // terminal is to use the std.debug.print() function. + + // Please fix this silly "foo" mistake here: + foo.debug.print("Hello world!\n", .{}); + + // The print function above takes two values: + // + // 1. A string of characters: "Hello world!\n". "\n" prints a new line. + // + // 2. A struct containing data to be displayed. .{} is an empty, nameless + // struct fulfilling the requirement. More about structs later. + // + // + // Now we're ready to...What's this!? Oh, we wanted to print a Goodbye + // message as well! + // + // Please fix this to use the same print function as above: + "Goodbye!\n" +} + +// Once you're done with the changes above, run `ziglings` to see if it passes. +// +// Finally, all files will contain the following comment: +// +// I AM NOT DONE +// +// Delete it when you're ready to continue to the next exercise! |