LabVIEWForum.de
Frage zu Arrays und lokalen Variabeln - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Frage zu Arrays und lokalen Variabeln (/Thread-Frage-zu-Arrays-und-lokalen-Variabeln)

Seiten: 1 2


Frage zu Arrays und lokalen Variabeln - IchSelbst - 04.03.2010 18:31

' schrieb:Ist 1x3 nicht von der Dimension her 1?
Du hast das richtig erkannt: Wenn am Element "Array initialisieren" zwei Indexeingänge vorhanden sind, dann handelt es sich um ein zwei-dimensionales Array. Die Anzahl der Index-Eingänge gibt also die Dimensionen an. Der Wert, der an einem Index angeschlossen ist, gibt an, wie lang diese Dimension ist.


Zitat:Das initialisierte Array hat die Dim 1x3. Jetzt ersetze ich array (index 0x0) mit einem String (dim 1x1).
Ich glaube, du denkst viel zu kompliziert. LV ist da ganz einfach. Unsure

Von einem String muss man nicht sagen, er hat eine Dimension. Ein String ist zwar eine ein-dimensionale Anordnung von mehreren Zeichen. Dass das so ist, interessiert aber heutezutage (normalerweise) keinen mehr. Ein String ist schlicht und einfach ein (wenn auch etwas komplizierter) Datentyp.

Wenn du in LV sagt, ein Array hat "Dim 1x3", dann heißt das in LV eher, dass das Array 2-dimensional ist. Die eine Dimension hat die Länge 1, die andere die Länge 3. Es ist also nicht so, dass "1x3" bedeutet: die eine Dimension hat die Länge 3.

Weiterhin besteht ein Array aus Elementen (eben der Anzahl, die der Dimensionslänge entspricht). Diese Elemente haben alle einen definierten Typ, der bei "Array initialisieren" angegeben wird (werden muss). Ist der Typ ein String, sagst du ganz einfach: Array of String. Und wenn du jetzt einen String (beachte: dimensionslos) in dem Array speichern willst, weist du ihm einfach einem Index zu. z.B. mit "In Array ersetzen". Oder auch mit "Array erstellen", dann wird der String einfach als nächster Index an die bestehenden Elemente angehängt. Das Array (respektive die entsprechende Dimension) wird dann automatisch um eins länger.


Frage zu Arrays und lokalen Variabeln - unicorn - 08.03.2010 16:07

' schrieb:..
@Unicorn:

Habe ich das richtig verstanden, dass man an ein Array nur andere Arrays anhaengen kann?

An ein Array kann man a) ein Element des Arrays anhängen, wenn das Array nur eine Dimension hat, b) ein Array vom gleichen Typ und gleicher Dimension oder c) eine Array vom gleichen Typ aber einer Dimension weniger.

' schrieb:Meine Elemente, in diesem Fall Skalare oder Strings, habe ich immer in Arrays umgewandelt.
Hierzu habe ich mir ein 1x1 Array mit dem String oder dem Skalar mit Hilfe von Initialize Array gebaut. Ich weiss es sonst nicht besser. ...
Ist vollkommen in Ordnung.

' schrieb:Replace Array Subset benutze ich jetzt auch, um die zuvor initialisierten Arrays zu fuellen. Wenn Du schreibst, das ist das Matlab-Vorgehen, wie sieht denn das LabVIEW-Vorgehen bitte aus?

Ich sagte "das entspricht". Es ist also ein LabVIEW-Vorgehen, das im Endeffekt das gleich macht, wie du es für Mablab beschrieben hast.
In LabVIEW hat man zusätzliche Möglichkeiten: Daten in einer Loop generieren (aus Datenerfassung, mit Hilfe des Schleifenindex ...), einen Draht einfach nach draußen ziehen und automatisch indizieren, d. h. in ein Array packen. Das automatische Indizieren ist bei einer For-Loop standardmäßig eingestellt und bei einer While-Loop über das Kontextmenü des Durchgangs des Drahtes durch die Schleifenbegrenzung einzustellen.