<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Phänomen nach Speicherung des letzten Array wertes!]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich arbeite grade an einem Projekt aus der Schule weiter.<br />
Nicht das ihr jetzt denkt, ihr sollt die Aufgabe erledigen! Das mach ich schon, nur stoße ich da grade auf eine Problem mit Arrays!</p>
<p>Folgende Erklärung:</p>
<p>Das Programm arbeitet mit einer Klasse. Aus der Klasse werden 10 Werte rausgeholt, die ich dann in einem Array abspeicher.</p>
<p>Nun habe ich das Problem, wenn ich den letzten Arraywert speicher (bzw. die for schleife dieses tut) wird die letzte vorherige Variable überschrieben und erhält den letzten Wert.</p>
<p>Hier einmal hoffentlich der Wesentliche Code.</p>
<p>Hauptprogramm:</p>
<pre><code class="language-cpp">// Datum der Messung anzeigen:
      String MWdate = MKessel-&gt;getMsgDatum(); //Aus Klasse
      MemoFeld-&gt;Lines-&gt;Add (&quot;Datum: &quot; + MWdate + &quot;&quot;);

      // Zeit der Messung anzeigen:
      String MWzeit = MKessel-&gt;getMsgZeit(); //Aus Klasse
      MemoFeld-&gt;Lines-&gt;Add (&quot;Zeit: &quot; + MWzeit+ &quot;\r\n&quot;);

      String werte[9];  //Erzeugung eines String Arrays mit 10 Felders

      // Messwerte anzeigen:
      for (int n = 0; n &lt; 10; n++) {

         float fMW = MKessel-&gt;getMsgWert(n); //Auch hier werden die Werte aus der Klasse geholt.
         String txtMW = FloatToStrF(fMW, ffFixed, 15, 1);

         werte[n]=txtMW; //Den Wert txtWM in werte an der Stelle n abspeichern

         MemoFeld-&gt;Lines-&gt;Add (&quot;   MW_&quot; + IntToStr(n) + &quot;:   &quot; + txtMW + &quot;°C&quot;);
      }
</code></pre>
<p>Coder der Werte ausgabe:</p>
<pre><code class="language-cpp">// Ein Messwert wird ausgelesen:
float TMessung::getMsgWert(int i)
{
     // Wertebereich testen
     if (i &lt; 10) {
        return Werte[i];
     }  else
        return -999,9;
}
</code></pre>
<p>So wie gesagt, nachdem die Schleife das letzte mal durchläuft und werte[n] (n ist dann 9) im Hauptprogramm ausgeführt wird, erhält die Variable MWzeit den gleichen Wert wie werte[9].<br />
Nirgends im Text steht, das MWzeit = werte[9] sein soll, Zumal dieses genau passiert, nach dem</p>
<pre><code class="language-cpp">werte[n]=txtMW; //Den Wert txtWM in werte an der Stelle n abspeichern
</code></pre>
<p>ausgeführt wurde.</p>
<p>Weis da einfach nicht weiter und weis auch absolut nicht weiter. Wenn ich das MWzeit nach der for-schleife angebe, wird MWdate überschrieben.</p>
<p>Für Hilfe wäre ich sehr dankbar.</p>
<p>Gruß<br />
Thorsten</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/128394/phänomen-nach-speicherung-des-letzten-array-wertes</link><generator>RSS for Node</generator><lastBuildDate>Wed, 29 Jul 2026 14:40:48 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/128394.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 03 Dec 2005 11:46:53 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Phänomen nach Speicherung des letzten Array wertes! on Sat, 03 Dec 2005 11:46:53 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich arbeite grade an einem Projekt aus der Schule weiter.<br />
Nicht das ihr jetzt denkt, ihr sollt die Aufgabe erledigen! Das mach ich schon, nur stoße ich da grade auf eine Problem mit Arrays!</p>
<p>Folgende Erklärung:</p>
<p>Das Programm arbeitet mit einer Klasse. Aus der Klasse werden 10 Werte rausgeholt, die ich dann in einem Array abspeicher.</p>
<p>Nun habe ich das Problem, wenn ich den letzten Arraywert speicher (bzw. die for schleife dieses tut) wird die letzte vorherige Variable überschrieben und erhält den letzten Wert.</p>
<p>Hier einmal hoffentlich der Wesentliche Code.</p>
<p>Hauptprogramm:</p>
<pre><code class="language-cpp">// Datum der Messung anzeigen:
      String MWdate = MKessel-&gt;getMsgDatum(); //Aus Klasse
      MemoFeld-&gt;Lines-&gt;Add (&quot;Datum: &quot; + MWdate + &quot;&quot;);

      // Zeit der Messung anzeigen:
      String MWzeit = MKessel-&gt;getMsgZeit(); //Aus Klasse
      MemoFeld-&gt;Lines-&gt;Add (&quot;Zeit: &quot; + MWzeit+ &quot;\r\n&quot;);

      String werte[9];  //Erzeugung eines String Arrays mit 10 Felders

      // Messwerte anzeigen:
      for (int n = 0; n &lt; 10; n++) {

         float fMW = MKessel-&gt;getMsgWert(n); //Auch hier werden die Werte aus der Klasse geholt.
         String txtMW = FloatToStrF(fMW, ffFixed, 15, 1);

         werte[n]=txtMW; //Den Wert txtWM in werte an der Stelle n abspeichern

         MemoFeld-&gt;Lines-&gt;Add (&quot;   MW_&quot; + IntToStr(n) + &quot;:   &quot; + txtMW + &quot;°C&quot;);
      }
</code></pre>
<p>Coder der Werte ausgabe:</p>
<pre><code class="language-cpp">// Ein Messwert wird ausgelesen:
float TMessung::getMsgWert(int i)
{
     // Wertebereich testen
     if (i &lt; 10) {
        return Werte[i];
     }  else
        return -999,9;
}
</code></pre>
<p>So wie gesagt, nachdem die Schleife das letzte mal durchläuft und werte[n] (n ist dann 9) im Hauptprogramm ausgeführt wird, erhält die Variable MWzeit den gleichen Wert wie werte[9].<br />
Nirgends im Text steht, das MWzeit = werte[9] sein soll, Zumal dieses genau passiert, nach dem</p>
<pre><code class="language-cpp">werte[n]=txtMW; //Den Wert txtWM in werte an der Stelle n abspeichern
</code></pre>
<p>ausgeführt wurde.</p>
<p>Weis da einfach nicht weiter und weis auch absolut nicht weiter. Wenn ich das MWzeit nach der for-schleife angebe, wird MWdate überschrieben.</p>
<p>Für Hilfe wäre ich sehr dankbar.</p>
<p>Gruß<br />
Thorsten</p>
]]></description><link>https://www.c-plusplus.net/forum/post/932971</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/932971</guid><dc:creator><![CDATA[ThorstenSteinberg]]></dc:creator><pubDate>Sat, 03 Dec 2005 11:46:53 GMT</pubDate></item><item><title><![CDATA[Reply to Phänomen nach Speicherung des letzten Array wertes! on Sat, 03 Dec 2005 11:58:12 GMT]]></title><description><![CDATA[<p>Du hast dein Array zu klein angegeben - wenn du 10 Werte speichern willst, benötigst du auch ein Array der Größe 10 (&quot;string werte[<strong>10</strong>];&quot;) - sonst schreibst du beim Zugriff auf 'werte[9]' auf den Speicherbereich hinter deinem Array - und da steht vermutlich schon die nächste lokale Variable.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/932981</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/932981</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Sat, 03 Dec 2005 11:58:12 GMT</pubDate></item><item><title><![CDATA[Reply to Phänomen nach Speicherung des letzten Array wertes! on Sat, 03 Dec 2005 12:06:30 GMT]]></title><description><![CDATA[<p>achsooooo, dachte Arrays fangen bei 0 an !?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/932988</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/932988</guid><dc:creator><![CDATA[ThorstenSteinberg]]></dc:creator><pubDate>Sat, 03 Dec 2005 12:06:30 GMT</pubDate></item><item><title><![CDATA[Reply to Phänomen nach Speicherung des letzten Array wertes! on Sat, 03 Dec 2005 12:14:15 GMT]]></title><description><![CDATA[<p>Ja, das tun sie auch, aber du gibst bei der Definition nicht den Maximalindex des Array an, sondern die Anzahl der Elemente ('string werte[10];' ist ein Array mit 10 Elementen, die mit 'werte[0]' bis 'werte[9]' angesprochen werden können).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/932999</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/932999</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Sat, 03 Dec 2005 12:14:15 GMT</pubDate></item><item><title><![CDATA[Reply to Phänomen nach Speicherung des letzten Array wertes! on Sat, 03 Dec 2005 12:23:29 GMT]]></title><description><![CDATA[<p>Ahsoo, jetzt habe ich es verstanden! alles klar!<br />
Vielen Dank, Problem wurde dadurch natürlich auch gelöst!</p>
<p>Gruß<br />
Thorsten</p>
]]></description><link>https://www.c-plusplus.net/forum/post/933008</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/933008</guid><dc:creator><![CDATA[ThorstenSteinberg]]></dc:creator><pubDate>Sat, 03 Dec 2005 12:23:29 GMT</pubDate></item></channel></rss>