<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en" xmlns="http://www.w3.org/2005/Atom"><title>Recent posts to Array an eine Funktion übergeben</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/ad9f8f9f71/" rel="alternate"/><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/ad9f8f9f71/feed.atom" rel="self"/><id>https://forge.codesys.com/forge/talk/Deutsch/thread/ad9f8f9f71/</id><updated>2020-02-28T11:33:37.465000Z</updated><subtitle>Recent posts to Array an eine Funktion übergeben</subtitle><entry><title>Array an eine Funktion übergeben</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/ad9f8f9f71/?limit=25#90be" rel="alternate"/><published>2020-02-28T11:33:37.465000Z</published><updated>2020-02-28T11:33:37.465000Z</updated><author><name>guerillero</name><uri>https://forge.codesys.com/u/guerillero/</uri></author><id>https://forge.codesys.com43afd18a73720df5253b361418a518f36fc4b7b1</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Hallo,&lt;/p&gt;
&lt;p&gt;Danke für die hilfrecihen Antworten. Leider hat das Projekt an einer anderen Stelle gehakt und ich kam erst jetzt dazu mich mit diesem Problem weiter auseinander zu setzten.&lt;/p&gt;
&lt;p&gt;Die Variablen werden Jetzt als POINTER TO ARRAY &lt;span&gt;[0..7]&lt;/span&gt; OF BYTE übergeben. Das ist einfacher als die einzelnen Variablen in einer Schleife zu übergeben und funktioniert einwandfrei. Der Pointer Zeigt auf eine Dimension des zweidimensionalen Arrays.&lt;/p&gt;
&lt;p&gt;Nochmal Danke für die schnelle Hilfe&lt;/p&gt;
&lt;p&gt;Gruß&lt;/p&gt;
&lt;p&gt;Michael Pajonk&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Array an eine Funktion übergeben</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/ad9f8f9f71/?limit=25#494f" rel="alternate"/><published>2020-02-28T11:33:34.922000Z</published><updated>2020-02-28T11:33:34.922000Z</updated><author><name>Anonymous</name><uri>https://forge.codesys.com/u/*anonymous/</uri></author><id>https://forge.codesys.com6278a0202f893da96cd7a47d3c4265be6bf5049d</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;&lt;em&gt;Originally created by:&lt;/em&gt; Bernhard Werner&lt;/p&gt;
&lt;p&gt;Hallo guerillero,&lt;/p&gt;
&lt;p&gt;es gibt zwei Schreibweisen um mehrdimensionale Arrays zu definieren:&lt;/p&gt;
&lt;p&gt;arrtest1 : ARRAY&lt;span&gt;[0..3,0..5]&lt;/span&gt; OF INT;&lt;/p&gt;
&lt;p&gt;arrtest2 : ARRAY&lt;span&gt;[0..3]&lt;/span&gt; OF ARRAY&lt;span&gt;[0..5]&lt;/span&gt; OF INT;&lt;/p&gt;
&lt;p&gt;ich glaube, dass der zweite Fall so von der IEC nicht gemeint war, die Syntax schliesst das aber auch nicht aus. Wir lassen jedenfalls beides zu.&lt;/p&gt;
&lt;p&gt;Der zweite Fall hat den Vorteil, dass man auch auf die einzelnen Dimensionen zugreifen kann: &lt;/p&gt;
&lt;p&gt;FUNKTION(Y:=arrtest2&lt;span&gt;[0]&lt;/span&gt;);&lt;/p&gt;
&lt;p&gt;Beim ersten Fall gibt es einfach keine Syntax dafür. Trotzdem sollten Strukturen und Felder immer per Pointer an Funktionen übergeben werden! Wenn das Feld als Wert übergeben wird, dann muss dieses jedesmal gesamt kopiert werden. Das kostet viel Zeit! &lt;/p&gt;
&lt;p&gt;Bernhard&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Array an eine Funktion übergeben</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/ad9f8f9f71/?limit=25#6f17" rel="alternate"/><published>2020-02-28T11:33:27.774000Z</published><updated>2020-02-28T11:33:27.774000Z</updated><author><name>Nick</name><uri>https://forge.codesys.com/u/nick/</uri></author><id>https://forge.codesys.com89029a2bbe1383bdb49085eed6b2e2b5d9cb62db</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Hallo, du könntest einen Zeiger übergeben.&lt;/p&gt;
&lt;p&gt;zum Beispiel:&lt;/p&gt;
&lt;p&gt;PLC_PRG:&lt;/p&gt;
&lt;p&gt;VAR&lt;/p&gt;
&lt;p&gt;ZweiDimArray: ARRAY &lt;span&gt;[0..8,0..8]&lt;/span&gt; OF INT;&lt;/p&gt;
&lt;p&gt;Zeiger: POINTER TO INT;&lt;/p&gt;
&lt;p&gt;(&lt;em&gt; Instanzen &lt;/em&gt;)&lt;/p&gt;
&lt;p&gt;test: test;&lt;/p&gt;
&lt;p&gt;END_VAR&lt;/p&gt;
&lt;p&gt;(&lt;em&gt; Code &lt;/em&gt;)    &lt;/p&gt;
&lt;p&gt;ZweiDimArray&lt;span&gt;[1,2]&lt;/span&gt; := 100;  (&lt;em&gt; mal so zum probieren &lt;/em&gt;)&lt;/p&gt;
&lt;p&gt;Zeiger := ADR (ZweiDimArray&lt;span&gt;[1,2]&lt;/span&gt;);&lt;/p&gt;
&lt;p&gt;test (Zeiger := Zeiger);&lt;/p&gt;
&lt;p&gt;FB test:&lt;/p&gt;
&lt;p&gt;VAR_INPUT&lt;/p&gt;
&lt;p&gt;EinDimArray: ARRAY &lt;span&gt;[0..8]&lt;/span&gt; OF INT;&lt;/p&gt;
&lt;p&gt;Zeiger: POINTER TO INT;&lt;/p&gt;
&lt;p&gt;END_VAR&lt;/p&gt;
&lt;p&gt;(&lt;em&gt; Code &lt;/em&gt;)&lt;/p&gt;
&lt;p&gt;EinDimArray&lt;span&gt;[1]&lt;/span&gt; := Zeiger^;&lt;/p&gt;
&lt;p&gt;Damit steht die 100 in EinDimArray&lt;span&gt;[1]&lt;/span&gt;. Wenn du ganze Felder übergeben möchtest könntest du das alles noch in eine Schleife betten. Vielleicht hilft dir das ein Stückchen weiter oder bringt dich auf neue Ideen. Rückmeldung wäre gut.&lt;/p&gt;
&lt;p&gt;m.f.g. Nick&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Array an eine Funktion übergeben</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/ad9f8f9f71/?limit=25#f48c" rel="alternate"/><published>2020-02-28T11:33:25.246000Z</published><updated>2020-02-28T11:33:25.246000Z</updated><author><name>guerillero</name><uri>https://forge.codesys.com/u/guerillero/</uri></author><id>https://forge.codesys.com153a59ebc7e7c879e139bbf40c7761c24e1dd1bf</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Hallo,&lt;/p&gt;
&lt;p&gt;wie kann man einer Funktion die eindimensionale Arrays verarbeitet eine Dimension eines zweidimensionalen Arrays übergeben?&lt;/p&gt;
&lt;p&gt;Zweidimensionales X: ARRAY&lt;span&gt;[0..8,0..8]&lt;/span&gt; OF BYTE;&lt;/p&gt;
&lt;p&gt;in der Funktion FUNKTION, Y: ARRAY&lt;span&gt;[0..8]&lt;/span&gt; OF BYTE;&lt;/p&gt;
&lt;p&gt;es funktioniert folgendes nicht:&lt;/p&gt;
&lt;p&gt;FUNKTION(Y:=X);&lt;/p&gt;
&lt;p&gt;FUNKTION(Y:=X&lt;span&gt;[0]&lt;/span&gt;);&lt;/p&gt;
&lt;p&gt;FUNKTION(Y&lt;span&gt;[0]&lt;/span&gt;:=X&lt;span&gt;[0,0]&lt;/span&gt;);&lt;/p&gt;
&lt;p&gt;Wie wird es dann gemacht? Geht das überhaupt?&lt;/p&gt;
&lt;p&gt;Gruß&lt;/p&gt;
&lt;p&gt;Michael Pajonk&lt;/p&gt;&lt;/div&gt;</summary></entry></feed>