The blank before var >0.5 cause error in R2016a
3 次查看(过去 30 天)
显示 更早的评论
I found a strange behavior in R2016a command line. The additional blank before > cause problem:
>> aAreaVec = rand(5,1)
aAreaVec =
0.8147
0.9058
0.1270
0.9134
0.6324
>> aAreaVec>0.5
ans =
1
1
0
1
1
>> aAreaVec >0.5
Error: "aAreaVec" was previously used as a variable, conflicting with its use here as the name of a function or command.
See "How MATLAB Recognizes Command Syntax" in the MATLAB documentation for details.
0 个评论
采纳的回答
Walter Roberson
2024-7-8
You are running into Command Function Equivalence https://www.mathworks.com/help/matlab/matlab_prog/command-vs-function-syntax.html
aAreaVec>0.5
is parsed as a relational operator comparing aAreaVec and 0.5
aAreaVec >0.5
is parsed as a call to a function named aAreaVec with parameter '>0.5'
which fails because aAreaVec is known as a variable and so cannot also be a function call.
The correction is to either use
aAreaVec>0.5
or
aAreaVec > 0.5
or to not have the code as the first expression; for example it would work to use
disp(aAreaVec >0.5)
0 个评论
更多回答(1 个)
Mathieu NOE
2024-7-8
I don't think it has to do with a specific release
I have the same result with R2020a
now either you put no space or at least one space before and after the <
in your case ( 1 space beore , none after) will throw an error
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Argument Definitions 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!