<?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[Anfängerhilfe bei Schleifen]]></title><description><![CDATA[<pre><code>005 int main() {
006   int z, i;
007   char s[81];
008   int h[255];
009 
010 
011     cout &lt;&lt; &quot;Bitte Satz eingeben: &quot;;
012     cin &gt;&gt; s;
013 
014     for(i = 0; i &lt; 255; i++)
015       h[i] = 0;
016 
017     for(i = 0; s[i] != '\0'; i++)
018       h[s[i&rsqb;&rsqb;++;
019 
020     for(i = 0; i &lt; 255; i++)
021       if(h[i] &gt; 0)
022   
023   cout &lt;&lt; (char)i &lt;&lt; &quot;(&quot; &lt;&lt; h[i] &lt;&lt; &quot;) &quot;;
024     cout &lt;&lt; endl;
</code></pre>
<p>Ich habe hier 3 for Schleifen. Bei der 2.Schleife habe ich hier ein Verständnis Problem. Zuerst was bedeutet h[s[i&rsqb;&rsqb;++?<br />
Ist es das selbe wie h[i]++ und s[i]++ ?</p>
<p>Geht das Programm die Schleife so lange durch bis es fertig ist und dann zur nächsten Schleife?</p>
<p>Bitte um Hilfe.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/197605/anfängerhilfe-bei-schleifen</link><generator>RSS for Node</generator><lastBuildDate>Thu, 01 Oct 2026 09:29:37 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/197605.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 12 Nov 2007 17:22:06 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Anfängerhilfe bei Schleifen on Mon, 12 Nov 2007 17:22:06 GMT]]></title><description><![CDATA[<pre><code>005 int main() {
006   int z, i;
007   char s[81];
008   int h[255];
009 
010 
011     cout &lt;&lt; &quot;Bitte Satz eingeben: &quot;;
012     cin &gt;&gt; s;
013 
014     for(i = 0; i &lt; 255; i++)
015       h[i] = 0;
016 
017     for(i = 0; s[i] != '\0'; i++)
018       h[s[i&rsqb;&rsqb;++;
019 
020     for(i = 0; i &lt; 255; i++)
021       if(h[i] &gt; 0)
022   
023   cout &lt;&lt; (char)i &lt;&lt; &quot;(&quot; &lt;&lt; h[i] &lt;&lt; &quot;) &quot;;
024     cout &lt;&lt; endl;
</code></pre>
<p>Ich habe hier 3 for Schleifen. Bei der 2.Schleife habe ich hier ein Verständnis Problem. Zuerst was bedeutet h[s[i&rsqb;&rsqb;++?<br />
Ist es das selbe wie h[i]++ und s[i]++ ?</p>
<p>Geht das Programm die Schleife so lange durch bis es fertig ist und dann zur nächsten Schleife?</p>
<p>Bitte um Hilfe.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1402012</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1402012</guid><dc:creator><![CDATA[deiwid]]></dc:creator><pubDate>Mon, 12 Nov 2007 17:22:06 GMT</pubDate></item><item><title><![CDATA[Reply to Anfängerhilfe bei Schleifen on Mon, 12 Nov 2007 17:38:04 GMT]]></title><description><![CDATA[<p>Es geht so lange durch, bis dein bei s eingegebener Satz zu ende ist <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_tongue"
      title=":P"
      alt="😛"
    /> ('\0' ist das Nullterminierungszeichen)</p>
<pre><code class="language-cpp">h[s[i&rsqb;&rsqb;++;
</code></pre>
<p>das heißt. h an der Stelle Wert von s an Stelle i um 1 erhöhen ...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1402025</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1402025</guid><dc:creator><![CDATA[*D*Evil]]></dc:creator><pubDate>Mon, 12 Nov 2007 17:38:04 GMT</pubDate></item><item><title><![CDATA[Reply to Anfängerhilfe bei Schleifen on Mon, 12 Nov 2007 20:36:19 GMT]]></title><description><![CDATA[<p>ok, danke</p>
<p>also versteh ich das programm jetzt richtig:<br />
zum beispiel hab ich bei s &quot;komm&quot; eingegeben<br />
ausgabe: k(1) m(3) o(1)</p>
<p>1. Schleife<br />
h[0] = 0<br />
h[1] = 0<br />
.<br />
.<br />
.<br />
h[255]=0</p>
<p>2. Schleife</p>
<p>h an der stelle s[0] ist ein k<br />
h an der stelle s[1] ist ein o</p>
<p>macht die das die schleife?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1402108</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1402108</guid><dc:creator><![CDATA[deiwid]]></dc:creator><pubDate>Mon, 12 Nov 2007 20:36:19 GMT</pubDate></item><item><title><![CDATA[Reply to Anfängerhilfe bei Schleifen on Mon, 12 Nov 2007 21:36:48 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">for (std::size_t i(0); s[i]; ++i)
    h[s[i&rsqb;&rsqb;++;

for(i = 0; i &lt; 255; i++)
    if(h[i] &gt; 0)
        std::cout &lt;&lt; static_cast&lt;char&gt;(i) &lt;&lt; &quot;(&quot; &lt;&lt; h[i] &lt;&lt; &quot;) &quot;;
</code></pre>
<p>... so</p>
<pre><code>geg.: s = { 'k', 'o', 'm', 'm', '\0' };
      h = { 0, 0, 0, ..., 0 };
</code></pre>
<pre><code class="language-cpp">h[s[0&rsqb;&rsqb;++;
</code></pre>
<p>'k' ^= 107</p>
<pre><code class="language-cpp">h[107]++; // h[107] == 1
</code></pre>
<p>.</p>
<pre><code class="language-cpp">h[s[1&rsqb;&rsqb;++;
</code></pre>
<p>'o' ^= 111</p>
<pre><code class="language-cpp">h[111]++; // h[111] == 1
</code></pre>
<p>.</p>
<pre><code class="language-cpp">h[s[2&rsqb;&rsqb;++;
</code></pre>
<p>'m' ^= 109</p>
<pre><code class="language-cpp">h[109]++; // h[109] == 1
</code></pre>
<pre><code class="language-cpp">h[s[3&rsqb;&rsqb;++;
</code></pre>
<p>'m' ^= 109</p>
<pre><code class="language-cpp">h[109]++; // h[109] == 2
</code></pre>
<pre><code>ausg.: &quot;k(1) o(1) m(2) &quot;
</code></pre>
<p>...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1402141</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1402141</guid><dc:creator><![CDATA[*D*Evil]]></dc:creator><pubDate>Mon, 12 Nov 2007 21:36:48 GMT</pubDate></item><item><title><![CDATA[Reply to Anfängerhilfe bei Schleifen on Tue, 13 Nov 2007 08:51:36 GMT]]></title><description><![CDATA[<p>danke vielmals, noch eine frage:</p>
<p>aber wie ist z.B o = 109 ??</p>
<p>das bsp. bringt mich noch um:)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1402284</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1402284</guid><dc:creator><![CDATA[deiwid]]></dc:creator><pubDate>Tue, 13 Nov 2007 08:51:36 GMT</pubDate></item><item><title><![CDATA[Reply to Anfängerhilfe bei Schleifen on Tue, 13 Nov 2007 08:54:48 GMT]]></title><description><![CDATA[<p>Ein char ist ein Ganzzahl-Wert zwischen 0 und 255 (bzw. -128 und 127), der je nach Anforderungen als Zeichen dargestellt werden kann - welchen Wert ein Zeichen hat, kannst du in der ASCII-Tabelle nachlesen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1402289</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1402289</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Tue, 13 Nov 2007 08:54:48 GMT</pubDate></item><item><title><![CDATA[Reply to Anfängerhilfe bei Schleifen on Tue, 13 Nov 2007 09:34:38 GMT]]></title><description><![CDATA[<p>aha das funktioniert mit dieser Tabelle..</p>
<p>das heißt das programm wandelt quasi das &quot;m&quot; in 109 um, weil das so ist?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1402316</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1402316</guid><dc:creator><![CDATA[deiwid]]></dc:creator><pubDate>Tue, 13 Nov 2007 09:34:38 GMT</pubDate></item><item><title><![CDATA[Reply to Anfängerhilfe bei Schleifen on Tue, 13 Nov 2007 10:25:54 GMT]]></title><description><![CDATA[<p>So ungefähr <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="😉"
    /> Das Programm stellt das Zeichen 'm' intern als 109 dar, weil das so in der ASCII-Tabelle steht.</p>
<p>Btw, für dich kann es letztlich unerheblich sein, welcher Wert hinter einem bestimmten Zeichen steht - das Programm verwendet konsistent immer die selbe Umrechung. Wichtig ist nur, daß jedes darstellbare Zeichen einen eindeutigen Wert zwischen 0 und 255 hat.</p>
<p>PS: Zumindest ANSI-Zeichen - UNICODE hat einen etwas größeren Wertebereich.</p>
<p>PPS: Ein Problem könntest du aber bekommen, wenn du das Programm auf einem System mit vorzeichenbehaftetem 'char' übersetzt - Sonderzeichen (z.B. Umlaute) haben dann plötzlich einen negativen Wert -&gt; SegFault.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1402368</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1402368</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Tue, 13 Nov 2007 10:25:54 GMT</pubDate></item></channel></rss>