<?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änger braucht dringend Hilfe über String ,Zeichenkette]]></title><description><![CDATA[<p>Hallo<br />
Ich bin auf der Suche nach einer Lösung für meine Aufgabe.</p>
<p>es sieht so aus</p>
<p>#include &lt;iostream&gt;</p>
<p>using namespace std;</p>
<p>int main ();</p>
<p>char zeichenkette;</p>
<p>//die Aufgabe besteht darin dass ich eine Zeichenkette eingeben muss z.b</p>
<p>cout&lt;&lt;&quot;Geben Sie die Zeichenkette ein &quot; &lt;&lt; endl ;<br />
cin&gt;&gt;Zeichenkette;</p>
<p>// Z.b Zeichenkette lautet: Aaa Bbb Ccc Asdef</p>
<p>Nun wenn ich die Zeichenkette eingebe , muss ich ein Buchstabe eingeben<br />
// wenn ich a eingebe sollte folgendes ausgegeben werden.<br />
cin&gt;&gt; buchstabe ;<br />
cout&lt;&lt;&quot;Der Buchstabe&quot;&lt;&lt; buchstabe &lt;&lt; &quot; kommt&quot; &lt;&lt; x &lt;&lt; &quot; Mal in der Zeichenkette vor&quot;&lt;&lt; endl;</p>
<p>Ich habe versucht nach Info zu suchen um die Aufgabe zu lösen , doch ich weiß nicht mal wonach ich suchen soll ( habe schon mit string funktion wörter zählen , count word in string gesucht aber nichts gefunden , im buch steht auch nichts)</p>
<p>BITTE UM HILFE <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>Bitte eine einfache Anwort für absoluter Anfänger <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>Vielen Dank für die Antwort</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/322908/anfänger-braucht-dringend-hilfe-über-string-zeichenkette</link><generator>RSS for Node</generator><lastBuildDate>Thu, 16 Jul 2026 12:38:10 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/322908.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 11 Jan 2014 16:28:38 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Anfänger braucht dringend Hilfe über String ,Zeichenkette on Sat, 11 Jan 2014 16:28:38 GMT]]></title><description><![CDATA[<p>Hallo<br />
Ich bin auf der Suche nach einer Lösung für meine Aufgabe.</p>
<p>es sieht so aus</p>
<p>#include &lt;iostream&gt;</p>
<p>using namespace std;</p>
<p>int main ();</p>
<p>char zeichenkette;</p>
<p>//die Aufgabe besteht darin dass ich eine Zeichenkette eingeben muss z.b</p>
<p>cout&lt;&lt;&quot;Geben Sie die Zeichenkette ein &quot; &lt;&lt; endl ;<br />
cin&gt;&gt;Zeichenkette;</p>
<p>// Z.b Zeichenkette lautet: Aaa Bbb Ccc Asdef</p>
<p>Nun wenn ich die Zeichenkette eingebe , muss ich ein Buchstabe eingeben<br />
// wenn ich a eingebe sollte folgendes ausgegeben werden.<br />
cin&gt;&gt; buchstabe ;<br />
cout&lt;&lt;&quot;Der Buchstabe&quot;&lt;&lt; buchstabe &lt;&lt; &quot; kommt&quot; &lt;&lt; x &lt;&lt; &quot; Mal in der Zeichenkette vor&quot;&lt;&lt; endl;</p>
<p>Ich habe versucht nach Info zu suchen um die Aufgabe zu lösen , doch ich weiß nicht mal wonach ich suchen soll ( habe schon mit string funktion wörter zählen , count word in string gesucht aber nichts gefunden , im buch steht auch nichts)</p>
<p>BITTE UM HILFE <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>Bitte eine einfache Anwort für absoluter Anfänger <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>Vielen Dank für die Antwort</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2376700</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2376700</guid><dc:creator><![CDATA[yeurandom]]></dc:creator><pubDate>Sat, 11 Jan 2014 16:28:38 GMT</pubDate></item><item><title><![CDATA[Reply to Anfänger braucht dringend Hilfe über String ,Zeichenkette on Sat, 11 Jan 2014 16:33:16 GMT]]></title><description><![CDATA[<p>der datentyp char speichert dir nur ein einzelnes zeichen. du willst aber eine zeichenkette. der richtige typ dafür ist <code>std::string</code> . um auf den zugreifen zu können brauchst du <code>#include &lt;string&gt;</code> . was <code>std::string</code> ist wird in jedem grundlagenbuch erklärt.</p>
<p>du willst also einen bestimmten buchstaben in einem <code>std::string</code> zählen. schau dir mal <a href="http://www.cplusplus.com/reference/algorithm/count/" rel="nofollow">http://www.cplusplus.com/reference/algorithm/count/</a> an.</p>
<p>gruss.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2376701</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2376701</guid><dc:creator><![CDATA[Fytch]]></dc:creator><pubDate>Sat, 11 Jan 2014 16:33:16 GMT</pubDate></item><item><title><![CDATA[Reply to Anfänger braucht dringend Hilfe über String ,Zeichenkette on Sat, 11 Jan 2014 16:38:20 GMT]]></title><description><![CDATA[<p>Vielen Dank.<br />
Sie haben die richtige Antwort bezüglich meine Frage gegeben. ja das mit #include &lt;string&gt; habe ich auch schon gewusst nur leider vergessen einzugeben. Die Seite von Ihnen liefert genau das was ich brauche.</p>
<p>Danke Schön <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>
]]></description><link>https://www.c-plusplus.net/forum/post/2376703</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2376703</guid><dc:creator><![CDATA[yeurandom]]></dc:creator><pubDate>Sat, 11 Jan 2014 16:38:20 GMT</pubDate></item><item><title><![CDATA[Reply to Anfänger braucht dringend Hilfe über String ,Zeichenkette on Sun, 12 Jan 2014 14:29:10 GMT]]></title><description><![CDATA[<p>Die Lösung für die Aufgabe habe ich schon raus und erfolgreich getestet, aber mich würde interessieren ob es noch eine andere Lösung gäbe.</p>
<p>Vielleicht kann jm. ja die Lösung posten, sodass ich auch was neues lernen kann <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="😃"
    /></p>
<p>Hier ist die Lösung (ink. Aufgabenstellung)</p>
<p>/<em>Entwerfen Sie ein C++ Programm, welches eine Zeichenkette sowie einen Buchstaben einliest. Das Programm soll ausgeben, wie oft der Buchstabe in der Zeichenkette vorkommt.Kleinbuchstaben und Großbuchstaben gelten als unterschiedliche Buchstaben.<br />
Testlauf (Eingaben unterstrichen):<br />
Geben Sie die Zeichenkette ein: Aaa Bbb Ccc.<br />
Geben Sie den Buchstaben ein: a<br />
Der Buchstabe a kommt 2 mal in der Zeichenkette vor.<br />
Drücken Sie eine beliebige Taste . . .</em>/</p>
<p>#include &lt;iostream&gt;<br />
#include &lt;string&gt;</p>
<p>using namespace std;</p>
<p>int main( int argc, char **argv )<br />
{</p>
<p>string zeichenkette;<br />
char buchstabe;</p>
<p>cout&lt;&lt;&quot;Geben Sie die Zeichenkette ein: &quot;;<br />
getline(cin, zeichenkette);<br />
cout&lt;&lt;&quot;Geben Sie den Buchstaben ein: &quot;;<br />
cin&gt;&gt;buchstabe;</p>
<p>long zahl = count(zeichenkette.begin(), zeichenkette.end(), buchstabe);</p>
<p>cout&lt;&lt;&quot;Der Buchstabe &quot;&lt;&lt;buchstabe&lt;&lt;&quot; kommt &quot;&lt;&lt;zahl&lt;&lt;&quot; Mal in der Zeichenkette vor&quot;&lt;&lt;endl;</p>
<p>return 0 ;<br />
}</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2376846</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2376846</guid><dc:creator><![CDATA[yeurandom]]></dc:creator><pubDate>Sun, 12 Jan 2014 14:29:10 GMT</pubDate></item><item><title><![CDATA[Reply to Anfänger braucht dringend Hilfe über String ,Zeichenkette on Sun, 12 Jan 2014 15:15:36 GMT]]></title><description><![CDATA[<p>Es fehlt noch <code>#include&lt;algorithm&gt;</code> . Die andere Lösung wäre natürlich die handgeschriebene Version. Wahrscheinlich ist dies auch die Lösung, die der Aufgabensteller erwartet (es ist leider ziemlich üblich, auf deinem Kenntnisstand einfache Funktionen aus der Standardbibliothek nachprogrammieren zu lassen). Denk mal darüber nach, wie du das lösen würdest, nur mit den Grundbestandteilen der Sprache (Variablen, if-Verzweigungen, Schleifen, u.Ä.). Das ist eine einfache Aufgabe, bei der du viel lernst, wenn du sie selber löst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2376852</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2376852</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Sun, 12 Jan 2014 15:15:36 GMT</pubDate></item><item><title><![CDATA[Reply to Anfänger braucht dringend Hilfe über String ,Zeichenkette on Sun, 12 Jan 2014 17:20:32 GMT]]></title><description><![CDATA[<p>yeurandom schrieb:</p>
<blockquote>
<p>Die Lösung für die Aufgabe habe ich schon raus und erfolgreich getestet, aber mich würde interessieren ob es noch eine andere Lösung gäbe.</p>
<p>Vielleicht kann jm. ja die Lösung posten, sodass ich auch was neues lernen kann <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="😃"
    /></p>
</blockquote>
<p>Hallo yeurandom,</p>
<p>Anbei eine Lösung für das etwas abgewandelte Problem. Wenn man zuerst den Buchstaben eingibt und anschließend die Zeichenkette, kann man beim Lesen der Zeichenkette gleich zählen:</p>
<pre><code>#include &lt;iostream&gt;

int main()
{
    using namespace std;
    char buchstabe;
    cout&lt;&lt;&quot;Geben Sie den Buchstaben ein: &quot;;
    cin&gt;&gt;buchstabe; 
    cout&lt;&lt;&quot;Geben Sie die Zeichenkette ein: &quot;;
    cin.ignore( 999, '\n' ); // Lese zunächst die komplette Zeile bis zum Ende, sonst stört das später!
    cin &gt;&gt; noskipws; // sage 'cin', dass auch Leerzeichen und Zeilenende mitgelesen werden
    int zaehler = 0;
    for( char zeichen; cin &gt;&gt; zeichen &amp;&amp; zeichen != '\n'; ) // bis '\n' := End Of Line also Ende der Zeile lesen
    {
        if( zeichen == buchstabe )
            ++zaehler;
    }
    cout&lt;&lt;&quot;Der Buchstabe &quot;&lt;&lt;buchstabe&lt;&lt;&quot; kommt &quot;&lt;&lt;zaehler&lt;&lt;&quot; Mal in der Zeichenkette vor&quot;&lt;&lt;endl; 

    return 0;
}
</code></pre>
<p>Frage ruhig nach, falls irgendwas unklar ist.</p>
<p>Gruß<br />
Werner</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2376868</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2376868</guid><dc:creator><![CDATA[Werner Salomon]]></dc:creator><pubDate>Sun, 12 Jan 2014 17:20:32 GMT</pubDate></item><item><title><![CDATA[Reply to Anfänger braucht dringend Hilfe über String ,Zeichenkette on Sun, 12 Jan 2014 19:38:17 GMT]]></title><description><![CDATA[<p>SeppJ schrieb:</p>
<blockquote>
<p>Es fehlt noch <code>#include&lt;algorithm&gt;</code> . Die andere Lösung wäre natürlich die handgeschriebene Version.</p>
</blockquote>
<p>Ja danke SeppJ</p>
<p>welche funktion habe ich benutz sodass ich &lt;algorithm&gt; inkludieren soll ? Es lässt sich laufen trotz ohne Hilfe von #include&lt;algorithm&gt;</p>
<p>Die andere Lösung mit Hilfe von If &amp; Schleife sieht so in Ordnung aus ?</p>
<pre><code>#incclude &lt;iostream&gt;
#include &lt;string&gt;
using namespace std;

int main()
{
	int x = 0; 
	string eingabetext;
	char buchstabe;

	cout &lt;&lt; &quot;Geben Sie die Zeichenkette ein: &quot;;
	getline(cin, eingabetext);
	cout &lt;&lt; &quot;Geben Sie den Buchstaben ein: &quot;; cin &gt;&gt; buchstabe;

	for (int i = 0; i &lt; eingabetext.length(); i++) 
		if (eingabetext.at(i) == buchstabe) // ... oder eingabetext[i] == ...
			x++;

	cout &lt;&lt; &quot;Der Buchstabe &quot; &lt;&lt; buchstabe &lt;&lt; &quot; kommt &quot; &lt;&lt; x
		&lt;&lt; &quot; mal in der Zeichenkette vor.&quot; &lt;&lt; endl;

	return 0;
}
</code></pre>
<p>Werner Salomon schrieb:</p>
<blockquote>
<p>Frage ruhig nach, falls irgendwas unklar ist.</p>
</blockquote>
<p>Ich nehme an: Zeichenkette lautet: Das macht ja richtig spass<br />
Meine Frage zu cin.ignore(999, '\n');</p>
<p>1. Was genau bewirkt der Wert 999 // Ich habe es probiert auf 1 zu ändern--&gt; läuft ganz normal</p>
<p>2.Frage: Sie sagen dass Die Zeichen bis zum Ende gelesen werden soll wenn man cin.ignore ( 999, 'n\') eingibt.</p>
<p>Anstatt '\n' habe ich 's' eingegeben um zu sehen ab wann es gelesen wird</p>
<p>ergebnis a wurde 3mal gefunden, also es zählt nach Buchstabe s ( =&gt; nach &quot;Das&quot;)</p>
<p>kurz und knappt, wenn man (999, '\n') eingibt müsste es doch nichts zählen können da nach dem endline kein text mehr zu zählen ist oder denke ich wieder kommplett falsch. <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="😃"
    /></p>
<p>Vielen Dank <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2376926</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2376926</guid><dc:creator><![CDATA[yeurandom]]></dc:creator><pubDate>Sun, 12 Jan 2014 19:38:17 GMT</pubDate></item><item><title><![CDATA[Reply to Anfänger braucht dringend Hilfe über String ,Zeichenkette on Sun, 12 Jan 2014 19:42:51 GMT]]></title><description><![CDATA[<p>yeurandom schrieb:</p>
<blockquote>
<p>welche funktion habe ich benutz sodass ich &lt;algorithm&gt; inkludieren soll ?</p>
</blockquote>
<p><a href="http://www.cplusplus.com/reference/algorithm/count/" rel="nofollow">count</a></p>
<blockquote>
<p>Es lässt sich laufen trotz ohne Hilfe von #include&lt;algorithm&gt;</p>
</blockquote>
<p>Bei dir vielleicht, mit genau deinem Compiler zur richtigen Uhrzeit, wenn die Mondphase stimmt. Aber garantiert überall? Nein. Verlass dich nie da drauf, dass ein Standardheader einen anderen einbindet (außer es ist genau dies vom Standard garantiert). Das geht immer schief. Beispielsweise der beliebte GCC hat in seiner Standardbibliothek fast gar keine Querverweise mehr zwischen Standardheadern und in jeder Version werden es weniger, weil die Entwickler diese gezielt ausmerzen. Damit wäre dein Programm dann plötzlich nicht mehr übersetzbar.</p>
<blockquote>
<p>Die andere Lösung mit Hilfe von If &amp; Schleife sieht so in Ordnung aus ?</p>
</blockquote>
<p>Ist ok.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2376928</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2376928</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Sun, 12 Jan 2014 19:42:51 GMT</pubDate></item><item><title><![CDATA[Reply to Anfänger braucht dringend Hilfe über String ,Zeichenkette on Sun, 12 Jan 2014 21:54:56 GMT]]></title><description><![CDATA[<p>yeurandom schrieb:</p>
<blockquote>
<p>Meine Frage zu cin.ignore(999, '\n');</p>
<p>1. Was genau bewirkt der Wert 999 // Ich habe es probiert auf 1 zu ändern--&gt; läuft ganz normal</p>
<p>2.Frage: Sie sagen dass Die Zeichen bis zum Ende gelesen werden soll wenn man cin.ignore ( 999, 'n\') eingibt.</p>
<p>Anstatt '\n' habe ich 's' eingegeben um zu sehen ab wann es gelesen wird</p>
<p>ergebnis a wurde 3mal gefunden, also es zählt nach Buchstabe s ( =&gt; nach &quot;Das&quot;)</p>
<p>kurz und knappt, wenn man (999, '\n') eingibt müsste es doch nichts zählen können da nach dem endline kein text mehr zu zählen ist oder denke ich wieder kommplett falsch. <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="😃"
    /></p>
</blockquote>
<p>Der erste Parameter bei ignore gibt an, wie viele Zeichen maximal(!) gelesen werden, um das '\n' (also den zweiten Parameter) zu finden. Siehe <a href="http://www.cplusplus.com/reference/istream/istream/ignore/" rel="nofollow">ignore</a>.<br />
Also das '999' heißt so viel wie &quot;viele&quot; - korrekt wäre hier <a href="http://www.cplusplus.com/reference/limits/numeric_limits/?kw=numeric_limits" rel="nofollow">std::numeric_limits&lt; std::streamsize &gt;::max()</a> (bedeutet hier 'unendlich' viele), aber dann würdest Du auch fragen, was das soll <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>Bei Zeile 8 in meinem Listing wird genau ein Zeichen gelesen. Dahinter steht aber noch das EOL (das '\n'), wenn man nun mit <code>cin &gt;&gt; noskipws</code> das Überspringen der White Space Character abschaltet und dann bis EOL (also '\n') liest, so würde die for-Schleife dahinter genau dieses eine EOL lesen und dann beendet werden. Probiere es aus, indem Du die Zeile 10 einfach weg lässt.<br />
Man kann <code>cin.ignore( 999, '\n' );</code> auch interpretieren als: &quot;Überlese den Rest der aktuellen Zeile&quot; .. hinter dem Buchstaben.</p>
<p>Gruß<br />
Werner</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2376989</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2376989</guid><dc:creator><![CDATA[Werner Salomon]]></dc:creator><pubDate>Sun, 12 Jan 2014 21:54:56 GMT</pubDate></item></channel></rss>