如题,我输入的x为:
>> x = [94.0,89.0,84.0,82.0,80.0,78.0,76.0,74.0,72.0,70.0,68.0,66.0,64.0,62.0,60.0,58.0,53.0,48.0,43.0,40.0]
x =
Columns 1 through 12
94 89 84 82 80 78 76 74 72 70 68 66
Columns 13 through 20
64 62 60 58 53 48 43 40
在程序运行时用到了interp1报错说必须用float值
于是乎我强制转换了一下x:
x = double(x);
结果还是一样的报错
我试着在命令行里面打x = double(x)
结果出来的数据仍然是
x =
Columns 1 through 12
94 89 84 82 80 78 76 74 72 70 68 66
Columns 13 through 20
64 62 60 58 53 48 43 40
求大虾解决这个问题!!
matlab 强制类型转换不起作用
答案:2 悬赏:70
解决时间 2022-01-01 01:32
- 提问者网友:野性
- 2021-12-31 20:27
最佳答案
- 二级知识专家网友:荒唐后生
- 2021-12-31 21:58
用single试试吧 x = single(x);
至于后一个问题,数据类型必须用class函数来查看,看打印值是说明不了问题的。
至于后一个问题,数据类型必须用class函数来查看,看打印值是说明不了问题的。
全部回答
- 1楼网友:野心和家
- 2021-12-31 22:44
x=1.234
whos x
a=int32(x)
注意matlab里面的int分为8位16位32位64位等,还有有符号还是没符号。
我想你肯定用这个int()函数出现问题了。你可以查下帮助文档。mathworks公司给matlab做了一个非常强大的帮助help。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯