我正在从文件中读取二进制数据,所讨论的特定值是uchar
(无符号的 1 字节值),并且在概念上是布尔值。我该如何写fread
声明?
即我应该???
在以下内容中添加什么:
is_valid=fread(fid, 1, 'uint8=>???','a');
我认为我可以将'*uint8'
其用于转换字符串,但我希望结果类型与其他用户所期望的最相似。
MATLAB 中的布尔值由logical
类型表示。但是,fread
不支持阅读逻辑,因此请先阅读它们并稍后uint8
转换。logical
例如:
is_valid = logical(fread(fid, 1, 'uint8', 'a'));
这适用于 2012b:
A = fread(fid, 1, 'uint8=>logical');