<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en" xmlns="http://www.w3.org/2005/Atom"><title>Recent posts to work with pointer</title><link href="https://forge.codesys.com/forge/talk/CODESYS-V2/thread/744dfd31c5/" rel="alternate"/><link href="https://forge.codesys.com/forge/talk/CODESYS-V2/thread/744dfd31c5/feed.atom" rel="self"/><id>https://forge.codesys.com/forge/talk/CODESYS-V2/thread/744dfd31c5/</id><updated>2020-02-27T22:21:34.644000Z</updated><subtitle>Recent posts to work with pointer</subtitle><entry><title>work with pointer</title><link href="https://forge.codesys.com/forge/talk/Codesys%2520V2.3/thread/744dfd31c5/?limit=25#5243" rel="alternate"/><published>2020-02-27T22:21:34.644000Z</published><updated>2020-02-27T22:21:34.644000Z</updated><author><name>RobiHerb</name><uri>https://forge.codesys.com/u/robiherb/</uri></author><id>https://forge.codesys.come5a994b1d6e32d79a854988f2fb0c4f1bea8b15d</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Ist there any information about pointer arithmetic in st?&lt;/p&gt;
&lt;p&gt;Try and error is a bad solution for me. &lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>work with pointer</title><link href="https://forge.codesys.com/forge/talk/Codesys%2520V2.3/thread/744dfd31c5/?limit=25#2957" rel="alternate"/><published>2020-02-27T22:21:30.260000Z</published><updated>2020-02-27T22:21:30.260000Z</updated><author><name>Ralph Holz</name><uri>https://forge.codesys.com/u/ralph-holz/</uri></author><id>https://forge.codesys.com80d45db1639812d7317c27647aab96ef9cbed2f1</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Hi Paul!&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Zitat:&lt;/strong&gt;&lt;br/&gt;
 value := actual_var^&lt;span&gt;[5]&lt;/span&gt;.x; (&lt;em&gt; didn't work &lt;/em&gt;) &lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Your Pointer is no array of something so you cant use indexes&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Zitat:&lt;/strong&gt;&lt;br/&gt;
 actual_var := actual_var + ( sizeof(target) * 5); (&lt;em&gt; didn't work &lt;/em&gt;) &lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Only sizeof(Variable) not Sizeof(Datatype) is possible.&lt;/p&gt;
&lt;p&gt;See the solutions below:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="nt"&gt;VAR&lt;/span&gt;
&lt;span class="err"&gt; &lt;/span&gt; &lt;span class="err"&gt; &lt;/span&gt;&lt;span class="nt"&gt;var1&lt;/span&gt; &lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;ARRAY&lt;/span&gt; &lt;span class="cp"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="nx"&gt;..30&lt;/span&gt;&lt;span class="cp"&gt;]&lt;/span&gt; &lt;span class="nt"&gt;OF&lt;/span&gt; &lt;span class="nt"&gt;target&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;span class="err"&gt; &lt;/span&gt; &lt;span class="err"&gt; &lt;/span&gt;&lt;span class="nt"&gt;actual_var&lt;/span&gt; &lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;POINTER&lt;/span&gt; &lt;span class="nt"&gt;TO&lt;/span&gt; &lt;span class="nt"&gt;ARRAY&lt;/span&gt; &lt;span class="cp"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="nx"&gt;..30&lt;/span&gt;&lt;span class="cp"&gt;]&lt;/span&gt; &lt;span class="nt"&gt;OF&lt;/span&gt; &lt;span class="nt"&gt;target&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;span class="err"&gt; &lt;/span&gt; &lt;span class="err"&gt; &lt;/span&gt;&lt;span class="nt"&gt;actual_var2&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;POINTER&lt;/span&gt; &lt;span class="nt"&gt;TO&lt;/span&gt; &lt;span class="nt"&gt;target&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;span class="err"&gt; &lt;/span&gt; &lt;span class="err"&gt; &lt;/span&gt;&lt;span class="nt"&gt;value&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;BYTE&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;span class="err"&gt; &lt;/span&gt; &lt;span class="err"&gt; &lt;/span&gt;&lt;span class="nt"&gt;value2&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;BYTE&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;span class="nt"&gt;END_VAR&lt;/span&gt;
&lt;span class="nt"&gt;actual_var&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nt"&gt;ADR&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;var1&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
&lt;span class="nt"&gt;value&lt;/span&gt; &lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nt"&gt;actual_var&lt;/span&gt;&lt;span class="o"&gt;^&lt;/span&gt;&lt;span class="cp"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="cp"&gt;]&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;x&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt; &lt;span class="o"&gt;(*&lt;/span&gt; &lt;span class="nt"&gt;works&lt;/span&gt; &lt;span class="o"&gt;*)&lt;/span&gt;
&lt;span class="nt"&gt;actual_var2&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nt"&gt;ADR&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;var1&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
&lt;span class="nt"&gt;actual_var2&lt;/span&gt; &lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nt"&gt;actual_var2&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nt"&gt;SIZEOF&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;actual_var2&lt;/span&gt;&lt;span class="o"&gt;^)&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="nt"&gt;DWORD&lt;/span&gt;&lt;span class="p"&gt;#&lt;/span&gt;&lt;span class="nn"&gt;4&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt; &lt;span class="o"&gt;(*&lt;/span&gt; &lt;span class="nt"&gt;works&lt;/span&gt; &lt;span class="o"&gt;*)&lt;/span&gt;
&lt;span class="nt"&gt;value2&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nt"&gt;actual_var2&lt;/span&gt;&lt;span class="o"&gt;^&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;x&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;

&lt;/div&gt;</summary></entry><entry><title>work with pointer</title><link href="https://forge.codesys.com/forge/talk/Codesys%2520V2.3/thread/744dfd31c5/?limit=25#be59" rel="alternate"/><published>2020-02-27T22:21:28.696000Z</published><updated>2020-02-27T22:21:28.696000Z</updated><author><name>Paul</name><uri>https://forge.codesys.com/u/paul/</uri></author><id>https://forge.codesys.com3f3a118e5fea593c6c5e81662aff960134ee29ec</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;I have array on structure target (x: byte, y : byte). &lt;/p&gt;
&lt;p&gt;var1 : array &lt;span&gt;[1..30]&lt;/span&gt; of target;&lt;/p&gt;
&lt;p&gt;actual_var : pointer to target;&lt;/p&gt;
&lt;hr/&gt;
&lt;p&gt;value := actual_var^&lt;span&gt;[5]&lt;/span&gt;.x;  (&lt;em&gt; didn't work &lt;/em&gt;)&lt;/p&gt;
&lt;p&gt;actual_var := actual_var + ( sizeof(target) * 5); (&lt;em&gt; didn't work &lt;/em&gt;)&lt;/p&gt;
&lt;p&gt;Where is problem?&lt;/p&gt;
&lt;p&gt;Thanks Paul&lt;/p&gt;&lt;/div&gt;</summary></entry></feed>