<?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[unverständliche Compilerwarnung]]></title><description><![CDATA[<p>Hallo,<br />
ich habe folgende Ereignisprozedur, innerhalb derer ein StringGrid mit Werten aus einer Datei gefüllt wird:</p>
<pre><code class="language-cpp">void __fastcall TForm1::ffnen1Click(TObject *Sender)
{
	//ÖFFNEN
	if (OpenDialog1-&gt;Execute())
	{
		Button2Click(Sender);
		Memo2-&gt;Clear();
		Memo2-&gt;Lines-&gt;LoadFromFile(OpenDialog1-&gt;FileName);
		Form1-&gt;Caption = &quot;Simplex - &quot; + ExtractFileName(OpenDialog1-&gt;FileName);
		int z = StrToInt(Memo2-&gt;Lines-&gt;Strings[0]);
		int s = StrToInt(Memo2-&gt;Lines-&gt;Strings[1]);
		int counter = 2;
		for (int i=0; i&lt;z; i++)
			for (int j=0; j&lt;s; j++)
				StringGrid1-&gt;Cells[j+1][i+1] = Memo2-&gt;Lines-&gt;Strings[counter++];
	}
}
//---------------------------------------------------------------------------
</code></pre>
<p>Der Compiler mahnt aber in Form einer Warnung Folgendes an:</p>
<blockquote>
<p>[C++ Warnung] Unit1.cpp(310): W8004 'counter' wurde ein Wert zugewiesen, der nie verwendet wird.</p>
</blockquote>
<p>Aber ... das ist doch gar nicht wahr?!? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/topic/83097/unverständliche-compilerwarnung</link><generator>RSS for Node</generator><lastBuildDate>Wed, 01 Jul 2026 19:45:13 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/83097.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 17 Aug 2004 18:00:04 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to unverständliche Compilerwarnung on Tue, 17 Aug 2004 18:01:48 GMT]]></title><description><![CDATA[<p>Hallo,<br />
ich habe folgende Ereignisprozedur, innerhalb derer ein StringGrid mit Werten aus einer Datei gefüllt wird:</p>
<pre><code class="language-cpp">void __fastcall TForm1::ffnen1Click(TObject *Sender)
{
	//ÖFFNEN
	if (OpenDialog1-&gt;Execute())
	{
		Button2Click(Sender);
		Memo2-&gt;Clear();
		Memo2-&gt;Lines-&gt;LoadFromFile(OpenDialog1-&gt;FileName);
		Form1-&gt;Caption = &quot;Simplex - &quot; + ExtractFileName(OpenDialog1-&gt;FileName);
		int z = StrToInt(Memo2-&gt;Lines-&gt;Strings[0]);
		int s = StrToInt(Memo2-&gt;Lines-&gt;Strings[1]);
		int counter = 2;
		for (int i=0; i&lt;z; i++)
			for (int j=0; j&lt;s; j++)
				StringGrid1-&gt;Cells[j+1][i+1] = Memo2-&gt;Lines-&gt;Strings[counter++];
	}
}
//---------------------------------------------------------------------------
</code></pre>
<p>Der Compiler mahnt aber in Form einer Warnung Folgendes an:</p>
<blockquote>
<p>[C++ Warnung] Unit1.cpp(310): W8004 'counter' wurde ein Wert zugewiesen, der nie verwendet wird.</p>
</blockquote>
<p>Aber ... das ist doch gar nicht wahr?!? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/584850</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/584850</guid><dc:creator><![CDATA[Ingo]]></dc:creator><pubDate>Tue, 17 Aug 2004 18:01:48 GMT</pubDate></item><item><title><![CDATA[Reply to unverständliche Compilerwarnung on Tue, 17 Aug 2004 18:56:13 GMT]]></title><description><![CDATA[<p>Du hast eine int Variable Counter declariert und der Variable den Wert<br />
2 zugewiesen.<br />
Weiter wird counter dann nicht mehr benutzt.<br />
counter++ ergibt keine Fehlermeldung mehr.<br />
Warum soll man eine Variable declarieren die im Programm nie benutzt wird,<br />
es sei denn man vergisst sie zu benutzen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/584877</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/584877</guid><dc:creator><![CDATA[hermes]]></dc:creator><pubDate>Tue, 17 Aug 2004 18:56:13 GMT</pubDate></item><item><title><![CDATA[Reply to unverständliche Compilerwarnung on Tue, 17 Aug 2004 19:18:00 GMT]]></title><description><![CDATA[<p>Und wie umgeht man dann in diesem Fall die Warnung?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/584894</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/584894</guid><dc:creator><![CDATA[Ingo]]></dc:creator><pubDate>Tue, 17 Aug 2004 19:18:00 GMT</pubDate></item><item><title><![CDATA[Reply to unverständliche Compilerwarnung on Tue, 17 Aug 2004 20:08:41 GMT]]></title><description><![CDATA[<p>Ingo schrieb:</p>
<blockquote>
<p>Der Compiler mahnt aber in Form einer Warnung Folgendes an:</p>
<blockquote>
<p>[C++ Warnung] Unit1.cpp(310): W8004 'counter' wurde ein Wert zugewiesen, der nie verwendet wird.</p>
</blockquote>
<p>Aber ... das ist doch gar nicht wahr?!?</p>
</blockquote>
<p>tja, selbst compiler haben kleine bugs</p>
]]></description><link>https://www.c-plusplus.net/forum/post/584924</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/584924</guid><dc:creator><![CDATA[net 0]]></dc:creator><pubDate>Tue, 17 Aug 2004 20:08:41 GMT</pubDate></item><item><title><![CDATA[Reply to unverständliche Compilerwarnung on Tue, 17 Aug 2004 20:58:28 GMT]]></title><description><![CDATA[<p>Ingo schrieb:</p>
<blockquote>
<p>Und wie umgeht man dann in diesem Fall die Warnung?</p>
</blockquote>
<p>Im Menu Projekt-&gt;Optionen-&gt;Compiler-&gt;Warnungen-&gt;Ausgewählte.<br />
Habe nicht nachgeschaut ob sich diese Warnung ausschalten lässt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/584942</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/584942</guid><dc:creator><![CDATA[hermes]]></dc:creator><pubDate>Tue, 17 Aug 2004 20:58:28 GMT</pubDate></item><item><title><![CDATA[Reply to unverständliche Compilerwarnung on Wed, 18 Aug 2004 04:52:47 GMT]]></title><description><![CDATA[<p>Ingo schrieb:</p>
<blockquote>
<p>Der Compiler mahnt aber in Form einer Warnung Folgendes an:</p>
<blockquote>
<p>[C++ Warnung] Unit1.cpp(310): W8004 'counter' wurde ein Wert zugewiesen, der nie verwendet wird.</p>
</blockquote>
<p>Aber ... das ist doch gar nicht wahr?!? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
</blockquote>
<p>doch, das ist wahr. Du erhöhst zwar weiter unten den counter, Du benutzt diesen Wert aber nicht. Die Warnung ist weg, wenn Du den Wert von counter z.B. einer anderen Variable zuweist oder diesen Wert anzeigen lässt. Die Warnung des Compilers ist völlig ok und kein Fehler des Compilers.<br />
Wenn Du die Warnung weg haben willst, schreib einfach:</p>
<pre><code class="language-cpp">counter;
</code></pre>
<p>Ich würde die Warnung auf keinen Fall in den Optionen abschalten, sie kann Dir manche langwierige Fehlersuche ersparen.</p>
<p>Grüße,<br />
Jochen</p>
]]></description><link>https://www.c-plusplus.net/forum/post/585051</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/585051</guid><dc:creator><![CDATA[JoKo]]></dc:creator><pubDate>Wed, 18 Aug 2004 04:52:47 GMT</pubDate></item><item><title><![CDATA[Reply to unverständliche Compilerwarnung on Wed, 18 Aug 2004 05:11:36 GMT]]></title><description><![CDATA[<p>Die Erhöhung einer Variable entspricht also nicht dem Benutzen einer Variable.<br />
Tja, wenn das so ist, muss ich das so hinnehmen. So richtig nachvollziehen kann ich das nicht, denn mein gesunder Menschenverstand sagt mir das Gegenteil.<br />
Danke aber für die Antworten.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/585053</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/585053</guid><dc:creator><![CDATA[Ingo]]></dc:creator><pubDate>Wed, 18 Aug 2004 05:11:36 GMT</pubDate></item><item><title><![CDATA[Reply to unverständliche Compilerwarnung on Wed, 18 Aug 2004 05:56:33 GMT]]></title><description><![CDATA[<p>Ingo schrieb:</p>
<blockquote>
<p>Tja, wenn das so ist, muss ich das so hinnehmen. So richtig nachvollziehen kann ich das nicht, denn mein gesunder Menschenverstand sagt mir das Gegenteil.</p>
</blockquote>
<p>*g* was hat der gesunde Menschenverstand mit dem Verstand eines Compilers zu tun? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
<p>Lies die Warnung nocheinmal ganz genau:<br />
&quot;W8004 'counter' wurde ein Wert zugewiesen, der nie verwendet wird.&quot;</p>
<p>Die Betonung liegt auf &quot;...ein <strong>Wert</strong> zugewiesen, der nie verwendet wird.&quot;<br />
Der Compiler meckert dass der Wert nicht verwendet wird, nicht dass counter nicht verwendet wird.<br />
counter erhält bei Dir den Wert 2, der Compiler sieht nirgends so etwas in der Art xyz = counter.</p>
<p>Beispiel:</p>
<pre><code class="language-cpp">int counter;
counter = 3; //hier kommt eine Warnung.
counter = 4;
counter;
</code></pre>
<p>Du erhältst hier eine Warnung, weil der <strong>Wert</strong> 3 nie verwendet wird.</p>
<p>Jochen</p>
]]></description><link>https://www.c-plusplus.net/forum/post/585061</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/585061</guid><dc:creator><![CDATA[JoKo]]></dc:creator><pubDate>Wed, 18 Aug 2004 05:56:33 GMT</pubDate></item><item><title><![CDATA[Reply to unverständliche Compilerwarnung on Wed, 18 Aug 2004 06:20:46 GMT]]></title><description><![CDATA[<p>Und doch wird der Wert in seinem Beispiel in dieser ZEile:</p>
<pre><code class="language-cpp">StringGrid1-&gt;Cells[j+1][i+1] = Memo2-&gt;Lines-&gt;Strings[counter++];
</code></pre>
<p>verwendet. (Stichwort Post-Increment)</p>
<p>-junix</p>
]]></description><link>https://www.c-plusplus.net/forum/post/585071</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/585071</guid><dc:creator><![CDATA[junix]]></dc:creator><pubDate>Wed, 18 Aug 2004 06:20:46 GMT</pubDate></item><item><title><![CDATA[Reply to unverständliche Compilerwarnung on Wed, 18 Aug 2004 06:33:28 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/6911">@JoKo</a>: das ergibt keinen Sinn.</p>
<p>bei [counter++] wird der Wert sehr wohl verwendet.</p>
<p>Aber vielleicht ist der Compiler ja oberschlau: &quot;Im allerletzten Schleifendurchlauf wird der Wert erhöht, aber das Ergebnis nicht mehr verwendet. was das bloß soll?&quot;</p>
<p>(kannst du prbnieren, ob mit counter=1 / ++counter die gleiche Warnungkommt? Würde mich mal interessieren...)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/585076</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/585076</guid><dc:creator><![CDATA[peterchen]]></dc:creator><pubDate>Wed, 18 Aug 2004 06:33:28 GMT</pubDate></item><item><title><![CDATA[Reply to unverständliche Compilerwarnung on Wed, 18 Aug 2004 06:56:39 GMT]]></title><description><![CDATA[<p>Irgendwie hat der Compiler, so scheints mir, eine Wanze.<br />
Die Warnung wird nicht immer ausgegeben. Mal ja, mal nein. Fahre Rechner neu hoch, compiliere -&gt; Warnung da. Nächstes Mal -&gt; keine Warnung.</p>
<p>Ich gehe langsam davon aus, dass ein Fehlverhalten des Compilers vorliegt. Momentan wird die Warnung mal wieder nicht angezeigt, auch nicht, <a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/4165">@peterchen</a>, nach dem von dir nachgefragten Umschreiben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/585084</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/585084</guid><dc:creator><![CDATA[Ingo]]></dc:creator><pubDate>Wed, 18 Aug 2004 06:56:39 GMT</pubDate></item><item><title><![CDATA[Reply to unverständliche Compilerwarnung on Wed, 18 Aug 2004 07:00:21 GMT]]></title><description><![CDATA[<p>Hängt vermutlich damit zusammen, dass inkrementell kompiliert wird?</p>
<p>-junix</p>
]]></description><link>https://www.c-plusplus.net/forum/post/585089</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/585089</guid><dc:creator><![CDATA[junix]]></dc:creator><pubDate>Wed, 18 Aug 2004 07:00:21 GMT</pubDate></item></channel></rss>