<?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[vector problem]]></title><description><![CDATA[<p>Mein problem liegt darin das wenn ich eine eingabe mache, die ich in einem String-Vektor speichere, ab der 2ten Eingabe der erste Buchstabe des Wortes fehlt. komischerweise aber beim ersten wort nicht.</p>
<p>hier noch der code meiner funktion:</p>
<pre><code class="language-cpp">string cache;
for(int i=1; i &lt;= count; i++){
    cout &lt;&lt; i &lt;&lt; &quot;: &quot;;
    cin.ignore();
    getline(cin,cache);
    names.push_back(cache);
    //cout &lt;&lt; names.back();   nur zu Testzwecken noch drin
    cout &lt;&lt; endl;
    };
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/221742/vector-problem</link><generator>RSS for Node</generator><lastBuildDate>Mon, 05 Oct 2026 16:59:44 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/221742.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 02 Sep 2008 19:06:57 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to vector problem on Tue, 02 Sep 2008 19:20:07 GMT]]></title><description><![CDATA[<p>Mein problem liegt darin das wenn ich eine eingabe mache, die ich in einem String-Vektor speichere, ab der 2ten Eingabe der erste Buchstabe des Wortes fehlt. komischerweise aber beim ersten wort nicht.</p>
<p>hier noch der code meiner funktion:</p>
<pre><code class="language-cpp">string cache;
for(int i=1; i &lt;= count; i++){
    cout &lt;&lt; i &lt;&lt; &quot;: &quot;;
    cin.ignore();
    getline(cin,cache);
    names.push_back(cache);
    //cout &lt;&lt; names.back();   nur zu Testzwecken noch drin
    cout &lt;&lt; endl;
    };
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1575515</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1575515</guid><dc:creator><![CDATA[*-**-*73]]></dc:creator><pubDate>Tue, 02 Sep 2008 19:20:07 GMT</pubDate></item><item><title><![CDATA[Reply to vector problem on Tue, 02 Sep 2008 19:16:18 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">i &lt;= names
</code></pre>
<pre><code class="language-cpp">names.push_back(cache);
</code></pre>
<p>Wie geht das?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1575520</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1575520</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Tue, 02 Sep 2008 19:16:18 GMT</pubDate></item><item><title><![CDATA[Reply to vector problem on Tue, 02 Sep 2008 19:19:24 GMT]]></title><description><![CDATA[<p>ja sorry da hab ich was verhauen^^ schiß namensänderungen</p>
<p>hier nochmal der richtige code für die schleife:</p>
<pre><code class="language-cpp">for(int i=1; i &lt;= count; i++)
....
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1575525</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1575525</guid><dc:creator><![CDATA[*-**-*73]]></dc:creator><pubDate>Tue, 02 Sep 2008 19:19:24 GMT</pubDate></item><item><title><![CDATA[Reply to vector problem on Tue, 02 Sep 2008 19:26:52 GMT]]></title><description><![CDATA[<p>Naja, mit <code>cin.ignore()</code> ignorierst du eben einen eingebenen Buchstaben <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>
]]></description><link>https://www.c-plusplus.net/forum/post/1575531</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1575531</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Tue, 02 Sep 2008 19:26:52 GMT</pubDate></item><item><title><![CDATA[Reply to vector problem on Tue, 02 Sep 2008 19:28:28 GMT]]></title><description><![CDATA[<p>Lustiger Fehler <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="🙂"
    /><br />
<code>std::cin.ignore()</code> schiebt intern nur einen Zeiger um eine Stelle weiter nach vorne. Allerdings wird bei der Eingabe der Speicher ab dem Punkt verwendet, wo das letzte Mal die Eingabe aufgehört hat.<br />
Dies funktioniert wahrscheinlich beim ersten Mal nicht, weil im <code>streambuf</code> von <code>std::cin</code> noch kein Speicher angefordert wurde.<br />
Allerdings bin ich mir da nicht sicher, ob der Fehler wirklich dadurch kommt. Was aber ganz sicher ist, du verwendest <code>std::cin::ignore</code> falsch.</p>
<p>1. An dieser Stelle gar nicht erst nötig.<br />
2. Wenn schon muss man es anders machen.<br />
3. Würde ich es allenfalls vor die for-Schleife hinschreiben, also ca. so:</p>
<pre><code class="language-cpp">std::cin.ignore(std::cin.rdbuf()-&gt;in_avail());
std::cin.clear();

std::string cache;
for(int i = 1; i &lt;= count; i++)
{
  std::cout &lt;&lt; i &lt;&lt; &quot;: &quot;;
  std::getline(std::cin, cache);

  names.push_back(cache);
  //std::cout &lt;&lt; cache;//               nur zu Testzwecken noch drin
  //std::cout &lt;&lt; std::endl; &lt;- nicht nötig, durch das Enter bei std::cin hast du schon eine neue Zeile.
};
</code></pre>
<p>Grüssli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1575533</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1575533</guid><dc:creator><![CDATA[Dravere]]></dc:creator><pubDate>Tue, 02 Sep 2008 19:28:28 GMT</pubDate></item><item><title><![CDATA[Reply to vector problem on Tue, 02 Sep 2008 19:36:36 GMT]]></title><description><![CDATA[<p>aber wieso geht dann die erset eingabe un die folgenden nichtmehr.<br />
und 2. geht es ohne diese funktion nicht da sonst die eingabe komplett übersprungen wird und bis jetzt hat er dadurch noch nie einen buchstaben ignoriert.</p>
<p>erste eingabe wird mit dem obrigen code einfach übersprungen und bleibt somit leer.<br />
lösst das problem also nicht.<br />
aber schonmal danke für die hilfe.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1575534</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1575534</guid><dc:creator><![CDATA[*-**-*73]]></dc:creator><pubDate>Tue, 02 Sep 2008 19:36:36 GMT</pubDate></item><item><title><![CDATA[Reply to vector problem on Wed, 03 Sep 2008 15:36:00 GMT]]></title><description><![CDATA[<p>*push*<br />
es ist wichtig..bräuchte echt ne antwort darauf</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1575991</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1575991</guid><dc:creator><![CDATA[*-**-*73]]></dc:creator><pubDate>Wed, 03 Sep 2008 15:36:00 GMT</pubDate></item><item><title><![CDATA[Reply to vector problem on Wed, 03 Sep 2008 15:47:58 GMT]]></title><description><![CDATA[<p>|-|/-\73 schrieb:</p>
<blockquote>
<p>*push*<br />
es ist wichtig..bräuchte echt ne antwort darauf</p>
</blockquote>
<p>*auf den eigenen Code verweist*<br />
Der funktioniert bei mir einwandfrei!</p>
<p>Zeig also her, was du genau gemacht hast.</p>
<p>Grüssli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1576001</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1576001</guid><dc:creator><![CDATA[Dravere]]></dc:creator><pubDate>Wed, 03 Sep 2008 15:47:58 GMT</pubDate></item><item><title><![CDATA[Reply to vector problem on Wed, 03 Sep 2008 16:36:00 GMT]]></title><description><![CDATA[<p>soll mal zur verwaltung von cd-archiven da sein, is aber halt noch am ganz am anfang.</p>
<p>das ist die komplette Methode der klasse database</p>
<pre><code class="language-cpp">#ifndef DATABASE_H_INCLUDED
#define DATABASE_H_INCLUDED

#include &lt;iostream&gt;
#include &lt;string&gt;
#include &lt;vector&gt;
#include &lt;fstream&gt;
using namespace std;

class database{

    private:

        int release;
        string interpret;
        string album;
        int track_numbers;
        vector&lt;string&gt; track_names;

    public:

      database* database::set_data(){
            cout &lt;&lt; &quot;Interpret: &quot;;
            getline(cin,interpret);
            cout &lt;&lt; endl;
            cout &lt;&lt; &quot;Album: &quot;;
            getline(cin,album);
            cout &lt;&lt; endl;
            if(release == 0000){
            cout &lt;&lt; &quot;Erscheinungsjahr: &quot;;
            cin &gt;&gt; release;
            cout &lt;&lt; endl;};
            cout &lt;&lt; &quot;Anzahl der Lieder: &quot;;
            cin &gt;&gt; track_numbers;
            cout &lt;&lt; endl;

            string cache;
            for(int i=1; i &lt;= track_numbers; i++){
            cout &lt;&lt; i &lt;&lt; &quot;: &quot;;
            cin.ignore();
            getline(cin,cache);
            track_names.push_back(cache);
            cout &lt;&lt; track_names.back();
            cout &lt;&lt; endl;
                };

            return this;
            };

    };

#endif // DATABASE_H_INCLUDED
</code></pre>
<p>und hier noch der dazugehöre code der main.cpp</p>
<pre><code class="language-cpp">#include &quot;database.h&quot;

int main()
{
    database* dbptr;

    database cd;
    dbptr = cd.set_data();
    getchar();
    return 0;
}
</code></pre>
<p>alles bissl komisch ich weiß. also nicht wundern.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1576014</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1576014</guid><dc:creator><![CDATA[*-**-*73]]></dc:creator><pubDate>Wed, 03 Sep 2008 16:36:00 GMT</pubDate></item><item><title><![CDATA[Reply to vector problem on Wed, 03 Sep 2008 17:17:59 GMT]]></title><description><![CDATA[<p>Ich empfehle dir nochmals meinen Code anzuschauen, denn du hast den meinigen nicht umgesetzt und immer noch den alten drin.</p>
<p>Zudem noch ein paar Tipps:<br />
Du solltest bei den Abfragen prüfen, ob auch das richtige eingegeben wurde. Eine einfache Art, wie man sowas machen kann:</p>
<pre><code class="language-cpp">template&lt;typename ValueT&gt;
void input(std::string const&amp; text, std::string const&amp; error, ValueT&amp; value)
{
  std::cout &lt;&lt; text;

  std::cin &gt;&gt; value;

  while(!std::cin)
  {
    std::cout &lt;&lt; error &lt;&lt; std::endl &lt;&lt; text;
    std::cin &gt;&gt; value;
  }
}

template&lt;typename ValueT, typename CheckT&gt;
void input(std::string const&amp; text, std::string const&amp; error, ValueT&amp; value, CheckT check)
{
  std::cout &lt;&lt; text;

  std::cin &gt;&gt; value;

  while(!std::cin || !check(value))
  {
    std::cout &lt;&lt; error &lt;&lt; std::endl &lt;&lt; text;
    std::cin &gt;&gt; value;
  }
}

// Verwendung:
bool check(int i) { return i &lt; 1000 &amp;&amp; i &gt; 0; };

int main()
{
  // Nur ganzzahlige Zahlen aktzeptieren
  int i;
  input(&quot;Gib die Zahl her!&quot;, &quot;Hey, nur zahlen!&quot;, i);

  // Nur ganzzahlige Zahlen in einem Bereich von 1 - 999
  input(&quot;Gib die Zahl her!&quot;, &quot;Hey, die ist ungültig!&quot;, i, &amp;check);

  return 0;
}
</code></pre>
<p>Grüssli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1576035</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1576035</guid><dc:creator><![CDATA[Dravere]]></dc:creator><pubDate>Wed, 03 Sep 2008 17:17:59 GMT</pubDate></item><item><title><![CDATA[Reply to vector problem on Wed, 03 Sep 2008 18:15:33 GMT]]></title><description><![CDATA[<p>ich haben deinen code getestet und er brachte das ergebniss das die erste eingabe übersprungen wurde.</p>
<p>ich habe extra meinen code gepostet da du meinstest er würde perfekt bei dir funktionieren.</p>
<p>danke für den typ wie ich die eingaben auf korektheit überprüfen kann, das ist eh das nächste was gemacht werden müsste(war deswegen au noch nicht vorhanden)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1576050</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1576050</guid><dc:creator><![CDATA[*-**-*73]]></dc:creator><pubDate>Wed, 03 Sep 2008 18:15:33 GMT</pubDate></item><item><title><![CDATA[Reply to vector problem on Wed, 03 Sep 2008 18:20:52 GMT]]></title><description><![CDATA[<p>|-|/-\73 schrieb:</p>
<blockquote>
<p>ich haben deinen code getestet und er brachte das ergebniss das die erste eingabe übersprungen wurde.</p>
<p>ich habe extra meinen code gepostet da du meinstest er würde perfekt bei dir funktionieren.</p>
</blockquote>
<p>Ich sagte, dass mein Code perfekt funktioniert bei mir. Also musst du meinen Code falsch implementiert haben und deshalb sollst du den mal zeigen. Also wie du meinen Code implementiert hast.</p>
<p>Ich habe es gerade nochmals nachgeprüft. Mein Code funktioniert! Da wird nichts übersprungen.</p>
<p>Grüssli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1576053</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1576053</guid><dc:creator><![CDATA[Dravere]]></dc:creator><pubDate>Wed, 03 Sep 2008 18:20:52 GMT</pubDate></item><item><title><![CDATA[Reply to vector problem on Wed, 03 Sep 2008 18:29:54 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">database* database::set_data(){
            cout &lt;&lt; &quot;Interpret: &quot;;
            getline(cin,interpret);
            cout &lt;&lt; endl;
            cout &lt;&lt; &quot;Album: &quot;;
            getline(cin,album);
            cout &lt;&lt; endl;
            if(release == 0000){
            cout &lt;&lt; &quot;Erscheinungsjahr: &quot;;
            cin &gt;&gt; release;
            cout &lt;&lt; endl;};
            cout &lt;&lt; &quot;Anzahl der Lieder: &quot;;
            cin &gt;&gt; track_numbers;
            cout &lt;&lt; endl;

            std::cin.ignore(std::cin.rdbuf()-&gt;in_avail());
            std::cin.clear();

            std::string cache;
            for(int i = 1; i &lt;= track_numbers; i++)
            {
            std::cout &lt;&lt; i &lt;&lt; &quot;: &quot;;
            std::getline(std::cin, cache);

            track_names.push_back(cache);
            std::cout &lt;&lt; track_names.back();//   nur zu Testzwecken noch drin
            //std::cout &lt;&lt; std::endl;
            };

            return this;
            };
</code></pre>
<p>so hab ich das implementiert. bestimmt is das falsch un deswegen wird der erste wert übersprungen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1576060</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1576060</guid><dc:creator><![CDATA[*-**-*73]]></dc:creator><pubDate>Wed, 03 Sep 2008 18:29:54 GMT</pubDate></item><item><title><![CDATA[Reply to vector problem on Wed, 03 Sep 2008 19:08:50 GMT]]></title><description><![CDATA[<p><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="😕"
    /><br />
Ich frage vielleicht mal anders, was für einen Compiler und eine Standardbibliothek verwendest du? Macht keinen Sinn, dass dies nicht funktionieren sollte.</p>
<p>Grüssli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1576091</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1576091</guid><dc:creator><![CDATA[Dravere]]></dc:creator><pubDate>Wed, 03 Sep 2008 19:08:50 GMT</pubDate></item><item><title><![CDATA[Reply to vector problem on Thu, 04 Sep 2008 04:35:17 GMT]]></title><description><![CDATA[<p>was für bibliotheken ich nutze steht hier</p>
<p>|-|/-\73 schrieb:</p>
<blockquote>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;string&gt;
#include &lt;vector&gt;
#include &lt;fstream&gt;
</code></pre>
</blockquote>
<p>und compiler is GCC.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1576209</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1576209</guid><dc:creator><![CDATA[*-**-*73]]></dc:creator><pubDate>Thu, 04 Sep 2008 04:35:17 GMT</pubDate></item><item><title><![CDATA[Reply to vector problem on Thu, 04 Sep 2008 17:49:28 GMT]]></title><description><![CDATA[<p>will mir den keiner helfen oder hat niemand eine antwort darauf?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1576675</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1576675</guid><dc:creator><![CDATA[*-**-*73]]></dc:creator><pubDate>Thu, 04 Sep 2008 17:49:28 GMT</pubDate></item><item><title><![CDATA[Reply to vector problem on Thu, 04 Sep 2008 17:58:14 GMT]]></title><description><![CDATA[<p>|-|/-\73 schrieb:</p>
<blockquote>
<p>will mir den keiner helfen oder hat niemand eine antwort darauf?</p>
</blockquote>
<p>Dann zeig mal, wo genau dein Problem liegt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1576684</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1576684</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Thu, 04 Sep 2008 17:58:14 GMT</pubDate></item><item><title><![CDATA[Reply to vector problem on Thu, 04 Sep 2008 18:00:34 GMT]]></title><description><![CDATA[<p>|-|/-\73 schrieb:</p>
<blockquote>
<p>will mir den keiner helfen oder hat niemand eine antwort darauf?</p>
</blockquote>
<p>Also:<br />
1. Ich hatte gefragt, welche Standardbibliothek du verwendest, nicht welche Header. Denn vielleicht ist die Bibliothek, welche du verwendest, verbuggt oder sowas ähnliches.<br />
2. Dein angegebenen Code, funktioniert bei mir einwandfrei und sollte auch einwandfrei funktionieren. Daher kann nur Punkt 1 zutreffen, also das deine Standardbibliothek einen Bug hat oder dass du es nicht so umgesetzt hast, wie du es zeigst.<br />
3. Alternativ könntest du auch mal das hier versuchen:<br />
<code>std::cin.ignore(std::cin.rdbuf()-&gt;in_avail());</code><br />
ersetzen durch:<br />
<code>std::cin.sync();</code></p>
<p>Mehr fällt mir dazu nicht mehr ein.</p>
<p>Grüssli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1576686</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1576686</guid><dc:creator><![CDATA[Dravere]]></dc:creator><pubDate>Thu, 04 Sep 2008 18:00:34 GMT</pubDate></item><item><title><![CDATA[Reply to vector problem on Thu, 04 Sep 2008 18:27:19 GMT]]></title><description><![CDATA[<p>is vll ne dumme frage..aber wo sehe ich was ich für ne standartbibliothek verwende??</p>
<p>BIG THX...die funktion std::cin.sync(); hat geholfen.</p>
<p>es funktioniert nun.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1576701</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1576701</guid><dc:creator><![CDATA[*-**-*73]]></dc:creator><pubDate>Thu, 04 Sep 2008 18:27:19 GMT</pubDate></item><item><title><![CDATA[Reply to vector problem on Thu, 04 Sep 2008 18:53:08 GMT]]></title><description><![CDATA[<p>|-|/-\73 schrieb:</p>
<blockquote>
<p>is vll ne dumme frage..aber wo sehe ich was ich für ne standartbibliothek verwende??</p>
</blockquote>
<p>Standardinclude path. Dort sind die zu finden. Also von der Entwicklungsumgebung. Such einfach mal z.b nach 'vector'.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1576713</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1576713</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Thu, 04 Sep 2008 18:53:08 GMT</pubDate></item></channel></rss>