我的研究需要一些代码,开发人员没有时间对我进行故障排除,所以我希望我能在这里得到一些帮助:
我认为这是一个MATLAB版本问题(可能),因为它看起来非常简单。这是造成悲伤的代码:
y = char(x);
输出结果为:
使用char
时出错无法从逻辑转换为char。
是的。如果我做disp(x)
我得到:
0
有人可以告诉我这里是否有版本/语法/问题?
答案 0 :(得分:2)
在这种情况下,您无法真正信任函数disp
。它会显示0
或1
的逻辑值。例如:
>> disp(false)
0
您应该使用class
函数测试x
的数据类型,我相信您会看到它返回logical
:
>> x = false;
>> class(x)
ans =
logical
如果您想强制它进行转换,您可以将logical
转换为double
,如下所示:
y = char(double(x));
但是,您只会得到一个null或开头的标题字符(0
和1
ASCII codes)。