d读二进制

H.S.T
数组隐式转为空[],指针可切片,所以:

SomeStruct myStruct;
fd.rawRead((&myStruct)[0 .. 1]);
//对pod类型有效

同样的:

SomeStruct myStruct;
fd.rawWrite((&myStruct)[0 .. 1]);

数组:

    SomeStruct[] arr;
	fd.rawWrite(arr);
	...
	arr.length = ... /*期望长度*/
	fd.rawRead(arr);

为正确读写长度,读前,你要手动写长度.
对齐不是问题,局部变量已对齐.
不同平台/硬件间转换时,要自己处理大小头.

io层不需要读对齐内存.构字段需要与文件对齐一致

后来发现可以先读进正字节数组,然后切片转为相应构.

为什么,不加rawRead(ref T t),rawWrite(ref T t)函数来处理.

posted @   zjh6  阅读(9)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 【杂谈】分布式事务——高大上的无用知识?
点击右上角即可分享
微信分享提示