Why do I get a warning about 'Integer Operands Are Required for Colon Operator When Used as Index' ?

694 次查看(过去 30 天)

采纳的回答

MathWorks Support Team
编辑:MathWorks Support Team 2021-11-17
Explanation:
You have used a noninteger value as one of the parameters (starting value, increment, or stopping value) for the colon (:) operator when using it to create a vector of indices to reference into a function.
Common causes:
You performed computations to obtain the starting or stopping values for the indexing but the result of those computations was not exactly an integer.
Solution:
Modify the index computations using the FIX, FLOOR, CEIL, or ROUND functions to ensure that the indices are integers. You can test if a variable contains an integer by comparing the variable to the output of the ROUND function operating on that variable when MATLAB is in debug mode on the line containing the variable.
https://www.mathworks.com/help/matlab/ref/fix.html
https://www.mathworks.com/help/matlab/ref/floor.html
https://www.mathworks.com/help/matlab/ref/ceil.html
https://www.mathworks.com/help/matlab/ref/round.html
Example demonstrating this error:
IntegerOperandsRequired.m
  2 个评论
Steven Lord
Steven Lord 2023-4-4
The "Error Breakpoints" category of breakpoints listed on this documentation page does not simply allow you to enter debug mode when an error occurs. Also included in that category are the ability to enter debug mode when a warning is issued or when either Inf or NaN are created in your code. So set an error breakpoint to stop when a warning is issued, run your code, and see where MATLAB enters debug mode.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Get Started with MATLAB 的更多信息

标签

尚未输入任何标签。

产品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by