Azzera filtri
Azzera filtri

How do you set a variable name to a variable value?

68 visualizzazioni (ultimi 30 giorni)
If I make a variable ( a = 'name' ), I want to set the variable name with the value of a.
ex) ( name = )
  4 Commenti
Stephen23
Stephen23 il 6 Ago 2021
Before you force yourself into writing slow, inefficient, complex code that is difficult to debug, you should read this:

Accedi per commentare.

Risposta accettata

Dave B
Dave B il 6 Ago 2021
Modificato: Dave B il 6 Ago 2021
You can do this with eval, but you are likely to regret this.
a = 'Pi';
val = pi;
eval(a + " = " + val);
Pi = 3.1416
This link has some alternatives to using string evaluation to run code. It's a bad/dangerous style and there's almost always a better approach.
If you must name your variables with another variable, consider using fields of a struct rather than raw variables:
mydynvars=struct;
a = 'Pi';
b = 'e';
mydynvars.(a) = pi;
mydynvars.(b) = exp(1);
mydynvars
mydynvars = struct with fields:
Pi: 3.1416 e: 2.7183

Più risposte (0)

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by