使用 debug 输出 Hello, World
zig
const std = @import("std");
pub fn main() !void {
std.debug.print("Hello, World\n", .{});
}
std.debug.print 会在标准错误中输出信息。
在标准输出中输出 Hello, World
zig
const std = @import("std");
pub fn main(init: std.process.Init) !void {
try std.Io.File.stdout().writeStreamingAll(init.io, "Hello, World\n");
}
- 通过
std.Io.File.stdout()获得标准输出句柄 - 所有输出操作依赖
std.Io对象,可以使用init.io
封装 print 函数
封装一个 print 函数,简化标准输出的复杂度。
zig
const std = @import("std");
pub fn main(init: std.process.Init) !void {
try print(init.io, "Hello, World\n", .{});
}
fn print(io: std.Io, comptime fmt: []const u8, args: anytype) !void {
var buf: [4096]u8 = undefined;
var out = std.Io.File.stdout().writerStreaming(io, &buf);
try out.interface.print(fmt, args);
try out.interface.flush();
}