<?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[Problem mit Vector]]></title><description><![CDATA[<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;vector&gt;
using namespace std;

void Test( vector&lt;char&gt; &amp;dat )
{
        dat.push_back('A');
        dat.push_back('B');
}

int main()
{

vector&lt;char&gt;dat;

Test( dat );
dat[dat.size()]='\x00';
cout&lt;&lt; &amp;dat[0] ;  // Gibt alles aus was im Vector steht

return 0;

}
</code></pre>
<p>Wie kann ich einen string Vector komplett ausgeben?<br />
Ich will halt das hier z.b. im Hauptprogramm Str1Str2 ausgeben wird.<br />
Oder muss ich bei einem string Vector immer direkt auf die einzelnen Elemente zugreiffen also z.b.</p>
<p>Bei mir wird immer nur die Speicheradresse vom ersten Element des Vectors ausgegeben.</p>
<pre><code class="language-cpp">cout&lt;&lt;dat[0]; // Gibt Str1 aus  
cout&lt;&lt;dat[1]; // Gibt Str2 aus
</code></pre>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;vector&gt;
using namespace std;

void Test( vector&lt;string&gt; &amp;dat )
{
        dat.push_back(&quot;Str1&quot;);
        dat.push_back(&quot;Str2&quot;);
}

int main()
{

vector&lt;string&gt;dat;
Test( dat );
cout&lt;&lt; &amp;dat[0];   // Soll alles ausgeben was im Vector steht

return 0;

}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/304348/problem-mit-vector</link><generator>RSS for Node</generator><lastBuildDate>Sun, 09 Aug 2026 18:45:30 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/304348.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 04 Jun 2012 12:21:54 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Problem mit Vector on Mon, 04 Jun 2012 12:21:54 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;vector&gt;
using namespace std;

void Test( vector&lt;char&gt; &amp;dat )
{
        dat.push_back('A');
        dat.push_back('B');
}

int main()
{

vector&lt;char&gt;dat;

Test( dat );
dat[dat.size()]='\x00';
cout&lt;&lt; &amp;dat[0] ;  // Gibt alles aus was im Vector steht

return 0;

}
</code></pre>
<p>Wie kann ich einen string Vector komplett ausgeben?<br />
Ich will halt das hier z.b. im Hauptprogramm Str1Str2 ausgeben wird.<br />
Oder muss ich bei einem string Vector immer direkt auf die einzelnen Elemente zugreiffen also z.b.</p>
<p>Bei mir wird immer nur die Speicheradresse vom ersten Element des Vectors ausgegeben.</p>
<pre><code class="language-cpp">cout&lt;&lt;dat[0]; // Gibt Str1 aus  
cout&lt;&lt;dat[1]; // Gibt Str2 aus
</code></pre>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;vector&gt;
using namespace std;

void Test( vector&lt;string&gt; &amp;dat )
{
        dat.push_back(&quot;Str1&quot;);
        dat.push_back(&quot;Str2&quot;);
}

int main()
{

vector&lt;string&gt;dat;
Test( dat );
cout&lt;&lt; &amp;dat[0];   // Soll alles ausgeben was im Vector steht

return 0;

}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2219192</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2219192</guid><dc:creator><![CDATA[ve_ctor]]></dc:creator><pubDate>Mon, 04 Jun 2012 12:21:54 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Vector on Mon, 04 Jun 2012 12:31:00 GMT]]></title><description><![CDATA[<p>ve_ctor schrieb:</p>
<blockquote>
<pre><code class="language-cpp">int main()
{

vector&lt;char&gt;dat;

Test( dat );
dat[dat.size()]='\x00'; //!!!
cout&lt;&lt; &amp;dat[0] ;  // Gibt alles aus was im Vector steht

return 0;

}
</code></pre>
</blockquote>
<p>Was passiert wohl, wenn du in einem vector, der genau zwei Elemente enthält, das dritte Element überschreibst? Richtig. Das tut dem vector weh...</p>
<blockquote>
<p>Wie kann ich einen string Vector komplett ausgeben?</p>
</blockquote>
<p>du hast hier keinen vector aus strings, sondern einen vector aus char. Allgemein gibst du alles was im vector aus, indem du per schleife drüber läufst.</p>
<blockquote>
<p>Ich will halt das hier z.b. im Hauptprogramm Str1Str2 ausgeben wird.</p>
</blockquote>
<p>Das wird nie passieren, wenn du nur 'A' und 'B' im vector hast. Hast du evtl. Deinen Code nicht kopiert sondern nur so halbwegs sinngemäß aufgeschrieben? dann lies dir bitte mal die Links in meiner Signatur durch. (Wie man das mit als <strong>wichtig</strong> gekennzeichneten Threads <em>immer</em> tun sollte, bevor man das erste mal was postet).</p>
<blockquote>
<p>Bei mir wird immer nur die Speicheradresse vom ersten Element des Vectors ausgegeben.</p>
</blockquote>
<p>Du gibst ja auch nur die Adresse des ersten Elements an cout. Anders als mit einer Schleife gehts hier nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2219197</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2219197</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Mon, 04 Jun 2012 12:31:00 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Vector on Tue, 05 Jun 2012 12:09:29 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">dat[dat.size()]='\x00'; //!!!
</code></pre>
<p>Stimmt das war dumm mein Vector geht ja nur von Element 0 bis 1 Element 2 gehört ja gar nicht mehr dazu.^^</p>
<p>Dann wäre es wohl besser wenn ich die Funktion so schreiben würde oder?</p>
<pre><code class="language-cpp">void Test( vector&lt;char&gt; &amp;dat )
{
        dat.push_back('A');
        dat.push_back('B');
        dat.push_back('\x00');
}
</code></pre>
<p>pumuckel schrieb:</p>
<blockquote>
<p>Das wird nie passieren, wenn du nur 'A' und 'B' im vector hast. Hast du evtl. Deinen Code nicht kopiert sondern nur so halbwegs sinngemäß aufgeschrieben? dann lies dir bitte mal die Links in meiner Signatur durch. (Wie man das mit als wichtig gekennzeichneten Threads immer tun sollte, bevor man das erste mal was postet).</p>
</blockquote>
<p>Das war auf das zweite Code Beispiel bezogen nicht auf das erste. Aber egal die Frage hast du mir ja schon beantwortet danke.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2219719</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2219719</guid><dc:creator><![CDATA[Ve_ctor]]></dc:creator><pubDate>Tue, 05 Jun 2012 12:09:29 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Vector on Tue, 05 Jun 2012 12:44:47 GMT]]></title><description><![CDATA[<p>Ve_ctor schrieb:</p>
<blockquote>
<pre><code class="language-cpp">dat[dat.size()]='\x00'; //!!!
</code></pre>
<p>Stimmt das war dumm mein Vector geht ja nur von Element 0 bis 1 Element 2 gehört ja gar nicht mehr dazu.^^</p>
</blockquote>
<p>Schalte den Debugmodus ein, der die von dir verwendete Standardbibliothek sicherlich anbietet. Siehe <a href="https://www.google.com/search?q=_SECURE_SCL" rel="nofollow">hier</a> oder <a href="https://www.google.com/search?q=_GLIBCXX_DEBUG" rel="nofollow">hier</a>.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2219739</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2219739</guid><dc:creator><![CDATA[krümelkacker]]></dc:creator><pubDate>Tue, 05 Jun 2012 12:44:47 GMT</pubDate></item></channel></rss>