<?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[Rechnung dauert sehr lange]]></title><description><![CDATA[<p>So nachdem ich ja mein Problem eingekreist habe,habe ich den Übeltäter gefunden.</p>
<p>Und zwar dauert bei mir,das hochzählen einer INT Variablen ewig.</p>
<p>Die Funktion wird nach ein Button Click aufgerufen.<br />
und brauch bis es 20000000 gezählt hat mehrere Minuten(letzte Durchlauf waren es 7 Min) alles andere in der Schleife(Visualisierung,Funktionsaufrufe usw.) ist deaktiviert.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/80344/rechnung-dauert-sehr-lange</link><generator>RSS for Node</generator><lastBuildDate>Tue, 30 Jun 2026 14:21:43 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/80344.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 20 Jul 2004 12:40:53 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Rechnung dauert sehr lange on Tue, 20 Jul 2004 12:40:53 GMT]]></title><description><![CDATA[<p>So nachdem ich ja mein Problem eingekreist habe,habe ich den Übeltäter gefunden.</p>
<p>Und zwar dauert bei mir,das hochzählen einer INT Variablen ewig.</p>
<p>Die Funktion wird nach ein Button Click aufgerufen.<br />
und brauch bis es 20000000 gezählt hat mehrere Minuten(letzte Durchlauf waren es 7 Min) alles andere in der Schleife(Visualisierung,Funktionsaufrufe usw.) ist deaktiviert.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/564420</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/564420</guid><dc:creator><![CDATA[the_hero99]]></dc:creator><pubDate>Tue, 20 Jul 2004 12:40:53 GMT</pubDate></item><item><title><![CDATA[Reply to Rechnung dauert sehr lange on Tue, 20 Jul 2004 13:43:24 GMT]]></title><description><![CDATA[<p>Was hast Du denn für einen Rechner IBM XT?!?</p>
<pre><code class="language-cpp">DWORD start = GetTickCount();
for (int i = 0; i &lt; 20000000; i++)
{
}
DWORD ende = GetTickCount();
RichEdit1-&gt;Lines-&gt;Add(AnsiString(ende - start));
start = GetTickCount();
int x = 0;
while (x &lt; 20000000)
	x++;
ende = GetTickCount();
RichEdit1-&gt;Lines-&gt;Add(AnsiString(ende - start));
</code></pre>
<p>Ausgabe im RichEdit;<br />
40<br />
50</p>
<p>Auf meinem Rechner dauert das ca. 40 - 50 Millisekunden?!?<br />
Zeig doch mal den Code...</p>
<p>EDIT: Ist das nicht die gleiche Frage, wie bei deinem anderen Posting?? Zumindest läuft es darauf hinaus. Und solange Du nicht zeigst, was Du machst können wir Dir nicht helfen...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/564476</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/564476</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Tue, 20 Jul 2004 13:43:24 GMT</pubDate></item><item><title><![CDATA[Reply to Rechnung dauert sehr lange on Tue, 20 Jul 2004 17:03:57 GMT]]></title><description><![CDATA[<p>Ok dann helft ihr nicht. Ich werde da nochmal selbst rum fummeln.</p>
<p>Mein PC den ich zum proggen nehme,handelt es sich um ein AMD K6-2 450MHZ,196MB RAM,32MB NVIDIA und 20GBHDD.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/564622</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/564622</guid><dc:creator><![CDATA[the_hero99]]></dc:creator><pubDate>Tue, 20 Jul 2004 17:03:57 GMT</pubDate></item><item><title><![CDATA[Reply to Rechnung dauert sehr lange on Tue, 20 Jul 2004 17:16:59 GMT]]></title><description><![CDATA[<p>Ich habe den Kram jetzt in einer for Schleife gepackt.<br />
Und ich scheiter genauso.<br />
Wieder die ewige Zeit.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/564629</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/564629</guid><dc:creator><![CDATA[the_hero99]]></dc:creator><pubDate>Tue, 20 Jul 2004 17:16:59 GMT</pubDate></item><item><title><![CDATA[Reply to Rechnung dauert sehr lange on Tue, 20 Jul 2004 17:18:34 GMT]]></title><description><![CDATA[<p>Mal so ne Frage. Ist dein Code streng geheim oder was? Wie wärs wenn du den mal posten würdest, dann könnten wir dir evtl sagen woran's liegt!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/564631</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/564631</guid><dc:creator><![CDATA[PuppetMaster2k]]></dc:creator><pubDate>Tue, 20 Jul 2004 17:18:34 GMT</pubDate></item><item><title><![CDATA[Reply to Rechnung dauert sehr lange on Tue, 20 Jul 2004 17:26:59 GMT]]></title><description><![CDATA[<p>Aber was kann denn da da der Auslöser sein,das der solange braucht?</p>
<p>ich teste es noch einmal indem ich die Zählerroutine in einer externe Funktione packe.</p>
<p>Weil ich fast soweit bin den ganzen Source Code in die Tonne zu kloppen.<br />
Es kann doch nicht sein.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/564639</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/564639</guid><dc:creator><![CDATA[the_hero99]]></dc:creator><pubDate>Tue, 20 Jul 2004 17:26:59 GMT</pubDate></item><item><title><![CDATA[Reply to Rechnung dauert sehr lange on Tue, 20 Jul 2004 17:32:09 GMT]]></title><description><![CDATA[<p>Ja WIE sollen wir Dir den helfen? Alles was Du an Information 'rüberbringst ist: Es dauert 7 Minuten bis 20000000 zu zählen! Wie Du machst, ist doch das Wichtige. Sollen wir raten, was Du machst?</p>
<p>Außerdem habe ich Dir doch hier schon 2 Beispiele genannt, die das Zählen deutlich schneller erledigen (auf meinem XP2400+). Aber selbst auf Deinem langsameren Rechner sollte es nicht 7 Minuten dauern. Aber ich hab' auf der Arbeit noch ein paar PII 266 MHz, 64 MB, da werde ich das auch mal testen.</p>
<p>Nochmal: solange Du Deinen Code nicht postest, kann man Dir nicht helfen. Wenn Dein Code natürlich ultrageheim ist...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/564642</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/564642</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Tue, 20 Jul 2004 17:32:09 GMT</pubDate></item><item><title><![CDATA[Reply to Rechnung dauert sehr lange on Tue, 20 Jul 2004 18:16:43 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">#pragma package(smart_init)
#pragma resource &quot;*.dfm&quot;
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
int i,int_max;
void __fastcall TForm1::Button1Click(TObject *Sender)
{
int_max=20000000;
ProgressBar1-&gt;Max=int_max;
for (i=1;i&lt;=int_max;i++)
ProgressBar1-&gt;Position=i;

}
//---------------------------------------------------------------------------
</code></pre>
<p>Das habe ich eben schnell bestatelt.<br />
So hier das gleiche Problem.</p>
<p>Und vorgegangen bin ich so:<br />
Neue Anwendung<br />
1 Button<br />
1 ProgressBar</p>
<p>mehr nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/564664</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/564664</guid><dc:creator><![CDATA[the_hero99]]></dc:creator><pubDate>Tue, 20 Jul 2004 18:16:43 GMT</pubDate></item><item><title><![CDATA[Reply to Rechnung dauert sehr lange on Tue, 20 Jul 2004 18:47:46 GMT]]></title><description><![CDATA[<p>also das liegt an dem progressbar.<br />
wenn man mal das bsp von Joe_M etwas ändert, siet man es deutlich, dass der progressbar ewig braucht:</p>
<pre><code class="language-cpp">DWORD start = GetTickCount();
  int x = 0;
  while (x &lt; 200000)
    x++;                               // einfach nur x erhöhen
  DWORD ende = GetTickCount();
  RichEdit1-&gt;Lines-&gt;Add(AnsiString(ende - start));

  start = GetTickCount();
  x = 0;
  while (x &lt; 200000)
    ProgressBar1-&gt;Position = x++;     // die position des progressbar erhöhen
  ende = GetTickCount();
  RichEdit1-&gt;Lines-&gt;Add(AnsiString(ende - start));
</code></pre>
<p>ich erhalte da ungefähr folgende werte:</p>
<p>0<br />
422</p>
]]></description><link>https://www.c-plusplus.net/forum/post/564676</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/564676</guid><dc:creator><![CDATA[nuclearspider]]></dc:creator><pubDate>Tue, 20 Jul 2004 18:47:46 GMT</pubDate></item><item><title><![CDATA[Reply to Rechnung dauert sehr lange on Tue, 20 Jul 2004 18:53:47 GMT]]></title><description><![CDATA[<p>ok, das sieht ja nun wirklich nicht wild aus. Ich werde das morgen so auf dem P2 laufen lassen.</p>
<p>Ist das ein Teil aus der Originalroutine? Ist dir klar, dass zwanzigmillionen Mal ProgressBar eine neue Position verarbeiten muß?</p>
<p>Ich mach' so was eher in der Art, da bleibt mehr CPU-Zeit für die eigentliche Arbeit:</p>
<pre><code class="language-cpp">int_max=20000000;
int iPBarMax = int_max / 100;
int iPBarCounter = 0;

ProgressBar1-&gt;Max=100;
ProgressBar1-&gt;Position = 0;
for (i=1;i&lt;=int_max;i++)
{
  iPBarCounter++;
  if (iPBarCounter &gt; iPBarMax)
  {
    ProgressBar1-&gt;Position++;
    iParCounter = 0;
  }
}
// oder aber auch (ohne weitere Variablen zu verwenden:
if ((i % (int_max / 100)) == 0)
  ProgressBar-&gt;Position++;
</code></pre>
<p>EDIT: Bäh, und dafür tipp ich mir hier die Finger wund, Nuclearspider war schneller...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/564679</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/564679</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Tue, 20 Jul 2004 18:53:47 GMT</pubDate></item><item><title><![CDATA[Reply to Rechnung dauert sehr lange on Tue, 20 Jul 2004 21:00:16 GMT]]></title><description><![CDATA[<p>So also ich habe das jetzt ohne ProgressBar gemacht und bekomme,bei meinen obigen Beispiel werte um 180.</p>
<p>Und jetzt meintest du das Joe_M das mein seekp noch ein Problem sein könnte.</p>
<p>Nun habe ich aber leider keine Idee wie ich sowas, anders lösen kann.</p>
<p>Und wenn ich wie du meintest alles in ein char array oder string lese,habe ich ja ein Problem, was ist wenn man mal ein 1 GB Datei durchsuchen will?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/564758</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/564758</guid><dc:creator><![CDATA[the_hero99]]></dc:creator><pubDate>Tue, 20 Jul 2004 21:00:16 GMT</pubDate></item></channel></rss>