<?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[buchstabe entfernen]]></title><description><![CDATA[<p>hier gehts darum einen buchstaben aus eine zeichenkette zu entfernen. beim 1. durchlauf passts, beim 2. gehts nicht. komme einfach nicht drauf. bitte um hilfe.</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
using namespace std;

int main() {

char eingabe[80]={0} ;
char ausgabe[80]={0} ;
char buchstabe;

     cout &lt;&lt; &quot;Bitte geben Sie eine Zeichenkette ein.&quot; &lt;&lt; endl;
     cin &gt;&gt; eingabe ;

     while (buchstabe!='!') { 
         cout &lt;&lt; &quot;Bitte geben Sie einen Buchstaben ein, der eliminiert werden soll.&quot; &lt;&lt; 
         endl;
         cin &gt;&gt; buchstabe;

	int j=0;

       for (int i=0; eingabe[i]!='\0'; i++) {
            if (eingabe[i]!=buchstabe) {  
            ausgabe[j]=eingabe[i]; 
            j++; }
            }

            cout &lt;&lt; &quot;Resultat: &quot; &lt;&lt; ausgabe &lt;&lt; endl; 

		for (int i = 0; ausgabe[i]!='\0'; i++) {
		eingabe[i] = ausgabe[i] ; }

            }
            }
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/211377/buchstabe-entfernen</link><generator>RSS for Node</generator><lastBuildDate>Wed, 14 Oct 2026 00:08:19 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/211377.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 22 Apr 2008 15:33:26 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to buchstabe entfernen on Tue, 22 Apr 2008 15:33:26 GMT]]></title><description><![CDATA[<p>hier gehts darum einen buchstaben aus eine zeichenkette zu entfernen. beim 1. durchlauf passts, beim 2. gehts nicht. komme einfach nicht drauf. bitte um hilfe.</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
using namespace std;

int main() {

char eingabe[80]={0} ;
char ausgabe[80]={0} ;
char buchstabe;

     cout &lt;&lt; &quot;Bitte geben Sie eine Zeichenkette ein.&quot; &lt;&lt; endl;
     cin &gt;&gt; eingabe ;

     while (buchstabe!='!') { 
         cout &lt;&lt; &quot;Bitte geben Sie einen Buchstaben ein, der eliminiert werden soll.&quot; &lt;&lt; 
         endl;
         cin &gt;&gt; buchstabe;

	int j=0;

       for (int i=0; eingabe[i]!='\0'; i++) {
            if (eingabe[i]!=buchstabe) {  
            ausgabe[j]=eingabe[i]; 
            j++; }
            }

            cout &lt;&lt; &quot;Resultat: &quot; &lt;&lt; ausgabe &lt;&lt; endl; 

		for (int i = 0; ausgabe[i]!='\0'; i++) {
		eingabe[i] = ausgabe[i] ; }

            }
            }
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1496277</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1496277</guid><dc:creator><![CDATA[deiwid]]></dc:creator><pubDate>Tue, 22 Apr 2008 15:33:26 GMT</pubDate></item><item><title><![CDATA[Reply to buchstabe entfernen on Tue, 22 Apr 2008 18:11:13 GMT]]></title><description><![CDATA[<p>pleease help</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1496383</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1496383</guid><dc:creator><![CDATA[deiwid]]></dc:creator><pubDate>Tue, 22 Apr 2008 18:11:13 GMT</pubDate></item><item><title><![CDATA[Reply to buchstabe entfernen on Tue, 22 Apr 2008 18:51:48 GMT]]></title><description><![CDATA[<p>So etwas gehört nicht ins C++-Forum! Du solltest Strings, Vectoren und die<br />
Algorithmen der STL benutzen!!!!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1496426</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1496426</guid><dc:creator><![CDATA[*D*]]></dc:creator><pubDate>Tue, 22 Apr 2008 18:51:48 GMT</pubDate></item><item><title><![CDATA[Reply to buchstabe entfernen on Tue, 22 Apr 2008 19:01:37 GMT]]></title><description><![CDATA[<p>der grund, warum sich wohl bis jetzt noch niemand geantwortet hat, ist wohl, dass dein code schrecklich zu lesen ist. richtig eingerückt könnte er bspw so aussehen (btw, du hast eine klammer in deinem code zuviel)</p>
<pre><code class="language-cpp">int main()
{
   char eingabe[80]={0} ;
   char ausgabe[80]={0} ;
   char buchstabe;

   cout &lt;&lt; &quot;Bitte geben Sie eine Zeichenkette ein.&quot; &lt;&lt; endl;
   cin &gt;&gt; eingabe ;

   while (buchstabe!='!')
   {
      cout &lt;&lt; &quot;Bitte geben Sie einen Buchstaben ein, der eliminiert werden soll.&quot; &lt;&lt; endl;
      cin &gt;&gt; buchstabe;

      int j=0;

      for (int i=0; eingabe[i]!='\0'; i++)
      {
         if (eingabe[i]!=buchstabe)
         {
            ausgabe[j]=eingabe[i];
            j++;
         }
      }

      cout &lt;&lt; &quot;Resultat: &quot; &lt;&lt; ausgabe &lt;&lt; endl;

      for (int i = 0; ausgabe[i]!='\0'; i++)
      {
         eingabe[i] = ausgabe[i];
      }

   } 
}
</code></pre>
<p>und dein problem liegt darin, dass du mit NTB-strings (null-terminated-byte-strings) arbeitest. schon dem namen nach haben diese es an sich, mit einer null beendet werden zu wollen. wenn du die einzelnen zeichen von eingabe nach ausgabe (und wieder zurück) kopierst, vergisst du beide male, die strings mit einem <code>'\0'</code> abzuschließen.<br />
ein weiteres problem ist, dass du die variable buchstabe nicht initialisierst (sie könnte zufällig schon zu beginn '!' enthalten).</p>
<p>wenn du ganz schlau bist, könntest du die C++ mittel verwenden.</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;algorithm&gt;
#include &lt;functional&gt;
#include &lt;cstring&gt;
using namespace std;

int main ()
{
   char eingabe[80] = {};
   char buchstabe;

   cout &lt;&lt; &quot;Eingabe: &quot;;
   cin &gt;&gt; eingabe;

   do
   {
      cout &lt;&lt; &quot;Welcher Buchstabe? : &quot;;
      cin &gt;&gt; buchstabe;

      *remove_copy_if (eingabe, eingabe + strlen(eingabe), eingabe, bind2nd(equal_to&lt;char&gt;(), buchstabe) = '\0';

      cout &lt;&lt; &quot;Ausgabe: &quot; &lt;&lt; eingabe &lt;&lt; endl;
   } while (buchstabe != '!';

}
</code></pre>
<p>wenn du allerdings auf std::strings umsteigst (was du solltest), sieht der code gleich wieder ganz anders aus.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1496435</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1496435</guid><dc:creator><![CDATA[queer_boy]]></dc:creator><pubDate>Tue, 22 Apr 2008 19:01:37 GMT</pubDate></item><item><title><![CDATA[Reply to buchstabe entfernen on Tue, 22 Apr 2008 21:38:59 GMT]]></title><description><![CDATA[<p>queer_boy schrieb:</p>
<blockquote>
<pre><code class="language-cpp">*remove_copy_if (eingabe, eingabe + strlen(eingabe), eingabe, bind2nd(equal_to&lt;char&gt;(), buchstabe) = '\0';
</code></pre>
</blockquote>
<p>Ein ganz mutiger? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /></p>
<p>queer_boy schrieb:</p>
<blockquote>
<pre><code class="language-cpp">*remove_copy_if (eingabe, eingabe + strlen(eingabe), eingabe, bind2nd(equal_to&lt;char&gt;(), buchstabe) = '\0';
</code></pre>
</blockquote>
<p>Ein ganz mutiger? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /></p>
<p>Edit:<br />
Und btw. wenn du schon &quot;C++ Mittel&quot; empfiehlst dann bitte auch richtig. Das mit dem char buffer, brauchen wir hier ja nicht näher erläutern hoffe ich (bezgl Buffer Overflows)</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;algorithm&gt;
#include &lt;string&gt;
using namespace std;

int main ()
{
   string eingabe;
   char buchstabe;

   cout &lt;&lt; &quot;Eingabe: &quot;;
   cin &gt;&gt; eingabe;

   do
   {
      cout &lt;&lt; &quot;Welcher Buchstabe? : &quot;;
      cin &gt;&gt; buchstabe;

      eingabe.erase(remove(eingabe.begin(), eingabe.end(), buchstabe, eingabe.end());

      cout &lt;&lt; &quot;Ausgabe: &quot; &lt;&lt; eingabe &lt;&lt; endl;
   } while (buchstabe != '!');

}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1496494</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1496494</guid><dc:creator><![CDATA[evilissimo]]></dc:creator><pubDate>Tue, 22 Apr 2008 21:38:59 GMT</pubDate></item><item><title><![CDATA[Reply to buchstabe entfernen on Tue, 22 Apr 2008 22:02:43 GMT]]></title><description><![CDATA[<p>evilissimo schrieb:</p>
<blockquote>
<p>queer_boy schrieb:</p>
<blockquote>
<pre><code class="language-cpp">*remove_copy_if (eingabe, eingabe + strlen(eingabe), eingabe, bind2nd(equal_to&lt;char&gt;(), buchstabe) = '\0';
</code></pre>
</blockquote>
<p>Ein ganz mutiger? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /></p>
</blockquote>
<p>in der tat. natürlich habe ich nur darauf gewartet, das jemand diesen einwand macht <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /></p>
<p>abgesehen davon, dass das der falsche algorithmus ist, ist der code illegal, ja.</p>
<blockquote>
<p>eingabe.erase(remove(eingabe.begin(), eingabe.end(), buchstabe, eingabe.end());</p>
</blockquote>
<p>da fehlt allerdings auch eine klammer <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="🙂"
    /></p>
<p>was mich bloß geritten hat.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1496519</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1496519</guid><dc:creator><![CDATA[queer_boy]]></dc:creator><pubDate>Tue, 22 Apr 2008 22:02:43 GMT</pubDate></item><item><title><![CDATA[Reply to buchstabe entfernen on Tue, 22 Apr 2008 22:17:05 GMT]]></title><description><![CDATA[<p>queer_boy schrieb:</p>
<blockquote>
<blockquote>
<p>eingabe.erase(remove(eingabe.begin(), eingabe.end(), buchstabe, eingabe.end());</p>
</blockquote>
<p>da fehlt allerdings auch eine klammer <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="🙂"
    /></p>
</blockquote>
<p>Stimmt, habs auch net ausprobiert (kompiliert) sondern nur hin geschrieben <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="😉"
    /><br />
Es ging mir mehr um die empfohlene technik als die Syntax</p>
<p>BR<br />
Vinzenz</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1496524</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1496524</guid><dc:creator><![CDATA[evilissimo]]></dc:creator><pubDate>Tue, 22 Apr 2008 22:17:05 GMT</pubDate></item></channel></rss>