Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
![]() |
#1 |
初级会员
注册日期: 2012-11-19
年龄: 36
帖子: 2
声望力: 0 ![]() |
![]()
clear
B=1:0.01:6; for i=0:0.01:5 B(i*100+1)=i; end 运行结果 ??? Attempted to access B(15); index must be a positive integer or logical 请问错在哪?为什么啊? |
![]() |
![]() |
![]() |
#2 |
初级会员
注册日期: 2012-11-21
年龄: 36
帖子: 3
声望力: 0 ![]() |
![]()
索引必须是整型,由于小数的计算机存储截断问题,i从0到0.13,i*100+1的结果小数部分为0(准确点是无限小),当i=0.14时,实际i*100+1=15.000000000000002,因此会报错。建议强制转换成整型,如uint32(i*100+1)。
|
![]() |
![]() |