how can I check if there is a cell in a structure?

5 visualizaciones (últimos 30 días)
Gianmarco Manzo
Gianmarco Manzo el 28 de En. de 2020
Comentada: Gianmarco Manzo el 29 de En. de 2020
Hello,
I have a structure that is dynamically filled through a for loop if certain conditions are met. It happens, however, that if the for loop reaches the end and the condition is not respected, I have a structure with a field that has one less element. How can I automatically check if this field has been completely filled?
for example in the code below it is verified that the cell 'struct.hi (1,2)' does not exist because the condition has not been respected. When I run under the control with 'isempty' and I get to the third cell I get this error: Index in position 2 exceeds array bounds (must not exceed 1).
x=[2,4,5];
for i=1:2
if expression
struct.hi(1,i)=x;
end
end
for j=1:2
if isempty(struct.hi(1,i)==0)
istructions
end
end

Respuesta aceptada

Sindar
Sindar el 29 de En. de 2020
Check the size of struct.hi. If the second dimension is size 1, then the struct.hi(1,2) doesn't exist
if size(struct.hi,2) == 1
Also, I wouldn't use struct as a variable name, since it is an important built-in
  1 comentario
Gianmarco Manzo
Gianmarco Manzo el 29 de En. de 2020
ok I try. Oh yes, it was only and example name. In reality my struct's name is FC. Thx.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Function Creation en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by