<?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[String umgekehrt ausgeben]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich lerne gerade die Rekursione und habe folgendes Bsp gesehen:</p>
<pre><code>char c[80];
void ausgabe(int n)
{
     if (c[n] != '\0')
     {
              ausgabe(n+1);
              cout &lt;&lt; c[n];
      }
}
</code></pre>
<p>wäre jemand so nett und mir diese Rekursion erklären(ich habe ein main erstellt und als ausgabe bekomme ich den eingegebenen String umgekehrt, aber verstehe nicht wieso <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /> )</p>
<p>danke</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/126413/string-umgekehrt-ausgeben</link><generator>RSS for Node</generator><lastBuildDate>Mon, 24 Aug 2026 18:53:45 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/126413.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 14 Nov 2005 21:24:10 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to String umgekehrt ausgeben on Mon, 14 Nov 2005 21:24:10 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich lerne gerade die Rekursione und habe folgendes Bsp gesehen:</p>
<pre><code>char c[80];
void ausgabe(int n)
{
     if (c[n] != '\0')
     {
              ausgabe(n+1);
              cout &lt;&lt; c[n];
      }
}
</code></pre>
<p>wäre jemand so nett und mir diese Rekursion erklären(ich habe ein main erstellt und als ausgabe bekomme ich den eingegebenen String umgekehrt, aber verstehe nicht wieso <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /> )</p>
<p>danke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/917902</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/917902</guid><dc:creator><![CDATA[tomas16]]></dc:creator><pubDate>Mon, 14 Nov 2005 21:24:10 GMT</pubDate></item><item><title><![CDATA[Reply to String umgekehrt ausgeben on Mon, 14 Nov 2005 21:44:39 GMT]]></title><description><![CDATA[<p>ich auch nicht *g*. sollte er den string nicht richtig rum ausgeben? was übergibst du als &quot;n&quot; an &quot;ausgabe&quot;?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/917954</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/917954</guid><dc:creator><![CDATA[cin]]></dc:creator><pubDate>Mon, 14 Nov 2005 21:44:39 GMT</pubDate></item><item><title><![CDATA[Reply to String umgekehrt ausgeben on Mon, 14 Nov 2005 21:51:04 GMT]]></title><description><![CDATA[<p>cin schrieb:</p>
<blockquote>
<p>ich auch nicht *g*. sollte er den string nicht richtig rum ausgeben? was übergibst du als &quot;n&quot; an &quot;ausgabe&quot;?</p>
</blockquote>
<p>als n übergebe ich 0</p>
<p>z.B in</p>
<pre><code>main ()
{
 cin &gt;&gt; c;

ausgabe(0)

}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/917964</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/917964</guid><dc:creator><![CDATA[tomas16]]></dc:creator><pubDate>Mon, 14 Nov 2005 21:51:04 GMT</pubDate></item><item><title><![CDATA[Reply to String umgekehrt ausgeben on Mon, 14 Nov 2005 21:50:35 GMT]]></title><description><![CDATA[<p>Auf deutsch: Wenn das aktuelle Zeichen nicht das letzte ist, gibt zuerst den Nachfolger, dann das aktuelle Zeichen aus.<br />
Oder anders:<br />
Bevor Du das aktuelle Zeichen ausgibst (wenn nicht am Ende), gib den Nachfolger aus, d.h. vor jedem Zeichen steht der Nachfolger.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/917967</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/917967</guid><dc:creator><![CDATA[tntnet]]></dc:creator><pubDate>Mon, 14 Nov 2005 21:50:35 GMT</pubDate></item><item><title><![CDATA[Reply to String umgekehrt ausgeben on Mon, 14 Nov 2005 21:56:14 GMT]]></title><description><![CDATA[<p>ok ich war blind <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/917976</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/917976</guid><dc:creator><![CDATA[cin]]></dc:creator><pubDate>Mon, 14 Nov 2005 21:56:14 GMT</pubDate></item><item><title><![CDATA[Reply to String umgekehrt ausgeben on Mon, 14 Nov 2005 22:20:36 GMT]]></title><description><![CDATA[<p>tntnet schrieb:</p>
<blockquote>
<p>Auf deutsch: Wenn das aktuelle Zeichen nicht das letzte ist, gibt zuerst den Nachfolger, dann das aktuelle Zeichen aus.<br />
Oder anders:<br />
Bevor Du das aktuelle Zeichen ausgibst (wenn nicht am Ende), gib den Nachfolger aus, d.h. vor jedem Zeichen steht der Nachfolger.</p>
</blockquote>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /> danke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/918011</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/918011</guid><dc:creator><![CDATA[tomas16]]></dc:creator><pubDate>Mon, 14 Nov 2005 22:20:36 GMT</pubDate></item><item><title><![CDATA[Reply to String umgekehrt ausgeben on Wed, 16 Nov 2005 15:11:35 GMT]]></title><description><![CDATA[<p>Also irgendwie kapier ich das nicht...</p>
<pre><code class="language-cpp">char c[80];
void ausgabe(int n)
{
     if (c[n] != '\0')
     {
              ausgabe(n+1);  // hier springt er wieder in die Funktion &quot;ausgabe
              cout &lt;&lt; c[n];  // und d.h. ja, dass das hier nie erreicht wird
     }  // ist die Bedingung false, wird du Funktion beendet, cout aber trotzdem
        // nie erreicht
}
</code></pre>
<p>Irgendwie...komisch. Trotzdem klappts ja auch bei mir -.- <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/919282</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/919282</guid><dc:creator><![CDATA[milo51]]></dc:creator><pubDate>Wed, 16 Nov 2005 15:11:35 GMT</pubDate></item><item><title><![CDATA[Reply to String umgekehrt ausgeben on Wed, 16 Nov 2005 15:21:38 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">char c[80];
void ausgabe(int n)
{
     if (c[n] != '\0')
     {
              ausgabe(n+1);  // wenn hier die Funktion fdkguhjhj aufgerufen würde
              cout &lt;&lt; c[n];  // würde man dann hier nie hinkommen?
     }

}
</code></pre>
<p>Jockel</p>
]]></description><link>https://www.c-plusplus.net/forum/post/919294</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/919294</guid><dc:creator><![CDATA[Jockelx]]></dc:creator><pubDate>Wed, 16 Nov 2005 15:21:38 GMT</pubDate></item><item><title><![CDATA[Reply to String umgekehrt ausgeben on Wed, 16 Nov 2005 15:23:26 GMT]]></title><description><![CDATA[<p>arbeite dir mal in Gedanken durch, was in der Funktion passiert:</p>
<pre><code>c=&quot;TEST&quot;;
ausgabe(0):
  if(c[0]!='\0')-&gt;true (c[0]='T')
    ausgabe(1):
      if(c[1]!='\0')-&gt;true (c[1]='E')
        ausgabe(2):
          if(c[2]!='\0')-&gt;true (c[2]='S')
            ausgabe(3):
              if(c[3]!='\0')-&gt;true (c[3]='T')
                ausgabe(4):
                  if(c[4]!='\0')-&gt;false (c[4]=0 - Stringende)
                  return
                cout&lt;&lt;c[3];-&gt; Ausgabe &quot;T&quot;
              endif
              return
            cout&lt;&lt;c[2];-&gt; Ausgabe &quot;S&quot;
          endif
          return
        cout&lt;&lt;c[1];-&gt;Ausgabe &quot;E&quot;
      endif
      return
    cout&lt;&lt;c[0];-&gt;Ausgabe &quot;T&quot;
  endif
  return
-&gt;Weiter im Programm
</code></pre>
<p>Du mußt dabei bedenken, daß die Funktion sich selbst rekursiv aufruft, d.h. wenn der Aufruf von ausgabe(n+1); beendet ist, macht sie dahinter weiter mit dem cout&lt;&lt;...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/919299</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/919299</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Wed, 16 Nov 2005 15:23:26 GMT</pubDate></item><item><title><![CDATA[Reply to String umgekehrt ausgeben on Wed, 16 Nov 2005 18:11:04 GMT]]></title><description><![CDATA[<p>Ach soo stimmt! Ausgeklügeltes System^^</p>
]]></description><link>https://www.c-plusplus.net/forum/post/919414</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/919414</guid><dc:creator><![CDATA[milo51]]></dc:creator><pubDate>Wed, 16 Nov 2005 18:11:04 GMT</pubDate></item><item><title><![CDATA[Reply to String umgekehrt ausgeben on Thu, 17 Nov 2005 07:41:10 GMT]]></title><description><![CDATA[<p>Noch etwas - globale Variablen solltest du vermeiden, besser wäre diese Version:</p>
<pre><code class="language-cpp">void rev_aus(const char* what);
{
  if(*what!='\0')
  {
    rev_aus(what+1);
    cout&lt;&lt;*what;
  }
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/919729</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/919729</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Thu, 17 Nov 2005 07:41:10 GMT</pubDate></item></channel></rss>