Why do I get a warning about 'Integer Operands Are Required for Colon Operator When Used as Index' ?
694 次查看(过去 30 天)
显示 更早的评论
Why do I get the following error message:
ERROR: Warning: Integer operands are required for colon operator when used as index.
采纳的回答
MathWorks Support Team
2021-10-11
编辑: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 个评论
bethel o
2023-4-4
But how can the problem be located as the warning does not include the offending line?
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 个)
另请参阅
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!