1个不稳定版本
0.1.0 | 2021年5月5日 |
---|
#1961 在 开发工具
用于 dbgtools
6KB
65 行
一个十六进制转储器,它通过调用闭包来允许应用程序选择如何输出转储。
示例:转储结构体
use dbgtools_hexdump::{Config, hexdump};
struct MyStruct {
eight: u8,
sixteen: u16,
thirtytwo: u32
}
let data = MyStruct { eight: 8, sixteen: 16, thirtytwo: 32 };
hexdump(Config::default(), &data, |offs, hex, ascii| {
println!("{:08x} {} {}", offs, hex, ascii);
});
示例:带有地址的转储结构体
有时在转储缓冲区中包含实际地址可能很有用。这可以通过将基偏移量添加到配置上下文来实现。
use dbgtools_hexdump::{Config, hexdump};
struct MyStruct {
eight: u8,
sixteen: u16,
thirtytwo: u32
}
let data = MyStruct { eight: 8, sixteen: 16, thirtytwo: 32 };
hexdump(Config {
offs: &data as *const _ as usize,
..Default::default()
}, &data, |offs, hex, ascii| {
println!("{:08x} {} {}", offs, hex, ascii);
});