Matlab does not return an error when variable does not exist.

7 ビュー (過去 30 日間)
Alvaro Chaveste
Alvaro Chaveste 2022 年 2 月 19 日
コメント済み: Image Analyst 2022 年 2 月 19 日
Hello everyone. Hope someone can help:
I call a variable that does not exist (in Editor) and I do not get an error message. in the Command Window.
Did I disable this capability by mistake?
  4 件のコメント
Alvaro Chaveste
Alvaro Chaveste 2022 年 2 月 19 日
This is the piece of code calling variable "modFracts" that is not in the workspace. Variable "propMain" does exist.
___
who propMain
who modFracts
propMain = char(propMain); propSec = char(propSec);
valMain = num2str(modFracts(handles.ILXLPlt),3);
stop
____
Following is what I see in the "Command Window"
___
Your variables are:
propMain
>>
___
Alvaro Chaveste
Alvaro Chaveste 2022 年 2 月 19 日
Screenshots follow

サインインしてコメントする。

採用された回答

Alvaro Chaveste
Alvaro Chaveste 2022 年 2 月 19 日
I've found out what the issue was.
The function where errors were not reported was called from another (main) program. It was called within a try-catch-end,
MATLAB apparently disables the error messages within the try-catch and routines run within it.
.
  1 件のコメント
Image Analyst
Image Analyst 2022 年 2 月 19 日
We could have told you that if you had shared the actual code instead of unrelated snippets. When there is an error, control passes to the catch block. But if in that block you choose not to do anything with the error (like print it out or whatever), then nothing happens - it just continues on with the line of code after the "end" of the catch block.

サインインしてコメントする。

その他の回答 (1 件)

Image Analyst
Image Analyst 2022 年 2 月 19 日
So you're saying that modFracts does not exist and when you do
who modFracts
it does not echo anything to the command window. That is normal. If it doesn't exist, it doesn't write anything to the command window. However if you do
modFractsCopy = modFracts;
it should throw an error because you're trying to reference/use it. Does it throw an error?
Try adding an s:
whos
and tell us what it shows.
  6 件のコメント
Alvaro Chaveste
Alvaro Chaveste 2022 年 2 月 19 日
Sorry for bombarding you with information. Your support is appreciated.
It looks like the issue goes beyond not throwing an error when a variable is not defined. It looks like it is not threowing error messages at all.
In the code image (attached), the program goes past "test 1". then it should give an error since "stopx" is not valid. It does not.
Image Analyst
Image Analyst 2022 年 2 月 19 日
編集済み: Image Analyst 2022 年 2 月 19 日
We can't run images, only code as text. Will check back later. Make it easy for us to help you, not hard.

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeHDL Coder についてさらに検索

製品


リリース

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by