# How to get all data from m-function?

2 Ansichten (letzte 30 Tage)
Lev Mihailov am 10 Jun. 2021
Kommentiert: Stephen23 am 10 Jun. 2021
Hello! I created a function for reading dpv files, it contains many parameters that I receive. But in the example of creating a function, there is only one
A=0.24*c
A1=0.1*f
B=1.2*b
...
Z2=2.4
end
When I try to read with this function, I only get the value A
% X=A;
How to get all 102 values ​​that are read and counted in my function?
##### 1 Kommentar-1 ältere Kommentare anzeigen-1 ältere Kommentare ausblenden
Stephen23 am 10 Jun. 2021
Best solution: use a structure.

Melden Sie sich an, um zu kommentieren.

### Akzeptierte Antwort

Max Heiken am 10 Jun. 2021
Hello! The value A is the only one that gets output because that is what you specified in your function declaration. You could instead specify a list of all outputs:
function [A, A2, B, .., Z2] = ReadDPV(fileName)
...
end
But this has its own drawbacks, because you would also need to accept all those values when you call the function:
[A, A2, B, .., Z2] = ReadDPV(fileName);
A perhaps better solution would be to store all these values in one container. If they are of the same type, a vector would work; if you want to still reference them by their name, a struct comes to mind; otherwise a cell array. An example for the struct approach:
contents = struct();
contents.A=0.24*c
contents.A1=0.1*f
contents.B=1.2*b
...
contents.Z2=2.4
end
And accessing them:
A = contents.A;
...
##### 0 Kommentare-2 ältere Kommentare anzeigen-2 ältere Kommentare ausblenden

Melden Sie sich an, um zu kommentieren.

### Weitere Antworten (1)

Scott MacKenzie am 10 Jun. 2021
Bearbeitet: Scott MacKenzie am 10 Jun. 2021
Your function is defined to only return A (which is perhaps a scalar). To return multiples values, return them as elements in a vector and define your function accordingly:
function [A, A1, B, ... ] = ReadDPV(fileName)
A = ...
A1 = ...
...
end
x will be A, y will be A1, and so on
##### 0 Kommentare-2 ältere Kommentare anzeigen-2 ältere Kommentare ausblenden

Melden Sie sich an, um zu kommentieren.

### Kategorien

Mehr zu Structures finden Sie in Help Center und File Exchange

R2020a

### Community Treasure Hunt

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

Start Hunting!

Translated by