如何在Zig语言中将数字以十六进制格式打印?
Zig 以十六进制格式打印数值的修改方法
要把代码里的数值改成十六进制打印,只需要修改std.debug.print的格式占位符即可,Zig的标准库提供了多种十六进制格式化选项:
1. 输出小写十六进制(无前缀)
const std = @import("std"); pub fn main() void { const foo: u8 = 128; std.debug.print("{x}\n", .{foo}); // 输出:80 }
2. 输出带0x前缀的小写十六进制
const std = @import("std"); pub fn main() void { const foo: u8 = 128; std.debug.print("{#x}\n", .{foo}); // 输出:0x80 }
3. 输出大写十六进制(无前缀)
const std = @import("std"); pub fn main() void { const foo: u8 = 128; std.debug.print("{X}\n", .{foo}); // 输出:80 }
4. 输出带0X前缀的大写十六进制
const std = @import("std"); pub fn main() void { const foo: u8 = 128; std.debug.print("{#X}\n", .{foo}); // 输出:0X80 }
核心规则:
{x}/{X}控制十六进制的大小写- 加上
#会自动添加对应的前缀(0x或0X)
内容的提问来源于stack exchange,提问作者Costava
相关产品推荐
相关产品推荐

