Create variable from string
5 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
I would like to alter a string in order to access a certain cell of a Matrix. Can I do that by creating a string first? For example
s='{2,1}{1,1}' and then somehow get A{2,1}{1,1}
Actually I would like to create something like a reference. Like
x=A{2,1} x=x{1,1} x=5
and then at the same time change A so I get the following value when calling
>>A{2,1}{1,1}
A{2,1}{1,1} =
5
Usually I would think of using a pointer but that does not seem to be possible in Matlab, or am I mistaken?
1 comentario
Stephen23
el 18 de Jun. de 2015
Editada: Stephen23
el 18 de Jun. de 2015
Avoid doing this.
MATLAB does not support pointers, and creating some hack-code to improvise them will not be robust.
In particular using dynamic strings like this to define indexing (or variables names) is liable to difficult-to-debug errors. Learn to program using more robust techniques, and your own life will become much easier...
Respuestas (2)
Walter Roberson
el 18 de Jun. de 2015
eval(['A', s])
and for assignment
eval(['A', s, ' = ', Value_As_string])
Not recommended at all.
1 comentario
Ver también
Categorías
Más información sobre Startup and Shutdown en Help Center y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!