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

9 Ansichten (letzte 30 Tage)
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 Kommentare
Alvaro Chaveste
Alvaro Chaveste am 19 Feb. 2022
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
>>
___

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Alvaro Chaveste
Alvaro Chaveste am 19 Feb. 2022
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 Kommentar
Image Analyst
Image Analyst am 19 Feb. 2022
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.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Image Analyst
Image Analyst am 19 Feb. 2022
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 Kommentare
Alvaro Chaveste
Alvaro Chaveste am 19 Feb. 2022
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 am 19 Feb. 2022
Bearbeitet: Image Analyst am 19 Feb. 2022
We can't run images, only code as text. Will check back later. Make it easy for us to help you, not hard.

Melden Sie sich an, um zu kommentieren.

Produkte


Version

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by