博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
matlab错误:Subscript indices must either be real positive integers or logicals.
阅读量:4287 次
发布时间:2019-05-27

本文共 531 字,大约阅读时间需要 1 分钟。

这两天调试matlab程序的过程中,遇到一bug: 

Subscript indices must either be real positive integers or logicals.

其中文解释很容易理解,即: 

下标索引必须是正整数类型或者逻辑类型。

出错原因

1)在访问矩阵(包括向量、二维矩阵、多维数组,下同)的过程中,下标索引要么从 0 开始,要么出现了负数。

注:matlab 的语法规定矩阵的索引从 1 开始,这与 C 等编程语言的习惯不一样。 

2)调用某个matlab内部函数时(该函数有输入参数),若工作空间中有一个与该函数同名的变量(向量、矩阵等)。

注:matlab会把该调用函数的命令当成是引用该变量的命令,该函数的输入参数被当成是该变量的索引,如果输入参数非正整数或逻辑值,则会出现上述错误,即使输入参数为正整数或逻辑值,不提示上述错误,由于初衷是调用函数,变成引用变量,也会造成程序错误。

解决办法

1)调试程序,把下标为 0 或者负数的地方修正。 
2)在定义变量名时,一定不要定义成与函数名相同的名字。
原文地址:https://blog.csdn.net/qq_23968185/article/details/51553750 
 

你可能感兴趣的文章
android虚拟键盘判断和高度获取代码
查看>>
android_WebView截图
查看>>
android-加固方案对比
查看>>
android状态栏黑色字体,时间电池深色
查看>>
一段比较坑的求职经历-from android little guy.
查看>>
Weex学习 and Kotlin学习
查看>>
几种直播流媒体协议
查看>>
ExoPlayer
查看>>
流媒体框架
查看>>
java语言当中-sleep()和await()的差异
查看>>
java锁机制
查看>>
android热插件,热更新,热修复,模块化
查看>>
(AndroidStudio)gradle配置多个代码仓库repositories
查看>>
facebook登录和分享
查看>>
YouTube集成
查看>>
程序员之路--项目重构的开发者心态
查看>>
Android 8.0新特性
查看>>
Android7.0新特性
查看>>
Android6.0新特性
查看>>
Andriod5.0新特性
查看>>