I get Error: Invalid expression. Check for missing or extra characters. when commenting out lines in a multi-line statement

19 vues (au cours des 30 derniers jours)
It seems you can't comment-out entire lines in MATLAB within a multi-line statement. Or am I doing it wrong.
A few examples below.
1. Expressions
y = ...
1 + ...
2 + ...
3
Returns:
y =
6
y = ...
1 + ...
%2 + ...
3
Raises:
%2 + ...
Error: Invalid expression. Check for missing or extra characters.
2. Structure definitions
s = struct(...
'A',1,...
'B',2,...
'C',3....
)
Returns:
s =
struct with fields:
A: 1
B: 2
C: 3
struct(...
'A',1,...
% 'B',2,...
'C',3...
)
Raises:
% 'B',2,...
Error: Invalid expression. When calling a function or indexing a variable, use parentheses. Otherwise, check for mismatched
delimiters.
Even if I use the Comment tool () in the MATLAB editor it causes these errors.
This is such a basic task! What am I doing wrong?

Réponses (2)

madhan ravi
madhan ravi le 25 Août 2020
You're right.
  2 commentaires
Bill Tubbs
Bill Tubbs le 25 Août 2020
Modifié(e) : Bill Tubbs le 25 Août 2020
I wonder whether the ellipsis is even necessary within parenthesis. Python uses '\' for line continuation (ellipsis is used for other things) but it may be omitted within parenthesis:
y = (
1
+ 2
+ 3
)
Anyhow, I'm getting off topic...

Connectez-vous pour commenter.


Bill Tubbs
Bill Tubbs le 25 Août 2020
Here is one solution but it's hardly very convenient and contrary to commenting-out in other languages:
y = ...
1 + ...
...%2 + ...
3
Returns:
y =
4
s = struct(...
'A',1,...
...% 'B',2,...
'C',3....
)
Returns:
s =
struct with fields:
A: 1
C: 3
  2 commentaires
madhan ravi
madhan ravi le 25 Août 2020
It is the same as
y = ...
1 + ...
... 2 + ...
3
Which does exactly as the document says that I linked in my answer.
Bill Tubbs
Bill Tubbs le 25 Août 2020
This is the best solution I think. Don't use '%' at all, just precede any lines you want to comment out with '...'.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Structures dans Help Center et File Exchange

Produits


Version

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by