<?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 daten als block auslesen]]></title><description><![CDATA[<p>Hi,</p>
<p>ich will daten mit einer C-funktion als speicherblock (char* oder void*) speichern, will mir aber den loop und vorallem das zwischenspeichern sparen.<br />
Gibt es eine möglichkeit direkt den vektor als speicherbereich zu übergeben?</p>
<p>Beispiel:</p>
<pre><code>std:vector hans;
size_t hansgroesse = hans.size();
write(location, &amp;hans, sizeof(hansgroesse) );
</code></pre>
<p>gibt es eine vergleichbare möglichkeit, denn so wies da steht wird wohl nicht gehen oder?<br />
bei std:string benutz ich für solche fälle immer die std::string::c_str() funktion.</p>
<p>danke für jeden tipp</p>
<p>Marcel</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/118809/vector-daten-als-block-auslesen</link><generator>RSS for Node</generator><lastBuildDate>Fri, 21 Aug 2026 17:56:58 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/118809.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 24 Aug 2005 14:37:11 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Vector daten als block auslesen on Wed, 24 Aug 2005 14:37:11 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>ich will daten mit einer C-funktion als speicherblock (char* oder void*) speichern, will mir aber den loop und vorallem das zwischenspeichern sparen.<br />
Gibt es eine möglichkeit direkt den vektor als speicherbereich zu übergeben?</p>
<p>Beispiel:</p>
<pre><code>std:vector hans;
size_t hansgroesse = hans.size();
write(location, &amp;hans, sizeof(hansgroesse) );
</code></pre>
<p>gibt es eine vergleichbare möglichkeit, denn so wies da steht wird wohl nicht gehen oder?<br />
bei std:string benutz ich für solche fälle immer die std::string::c_str() funktion.</p>
<p>danke für jeden tipp</p>
<p>Marcel</p>
]]></description><link>https://www.c-plusplus.net/forum/post/857621</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/857621</guid><dc:creator><![CDATA[Gehirnmann]]></dc:creator><pubDate>Wed, 24 Aug 2005 14:37:11 GMT</pubDate></item><item><title><![CDATA[Reply to Vector daten als block auslesen on Wed, 24 Aug 2005 15:04:57 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>das geht hier mittels '&amp;hans[0]'</p>
<p>mfg<br />
v R</p>
]]></description><link>https://www.c-plusplus.net/forum/post/857637</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/857637</guid><dc:creator><![CDATA[virtuell Realisticer]]></dc:creator><pubDate>Wed, 24 Aug 2005 15:04:57 GMT</pubDate></item><item><title><![CDATA[Reply to Vector daten als block auslesen on Wed, 24 Aug 2005 15:05:11 GMT]]></title><description><![CDATA[<p>Irgendwo hab ich mal gelesen, das der Speicher von Vector immer (fast immer),<br />
zusammenhängend im Speicher steht.<br />
So könnte es dann auch sein, das man mit vec::begin und vec::end diesen<br />
bereich bekommen könnte, falls der vec&lt;T&gt;::iterator ein T* ist.<br />
Dann könnte man den Iterator nach T* casten, und hätte dann ja<br />
mit begin() den Anfang, und mit end() das Ende. Und dazwischen die Daten.<br />
Es wäre ein Möglichkeit, ka ob sie Funktioniert, du wirst es ausprobieren müssen. :p</p>
]]></description><link>https://www.c-plusplus.net/forum/post/857638</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/857638</guid><dc:creator><![CDATA[phlox81]]></dc:creator><pubDate>Wed, 24 Aug 2005 15:05:11 GMT</pubDate></item><item><title><![CDATA[Reply to Vector daten als block auslesen on Wed, 24 Aug 2005 15:06:22 GMT]]></title><description><![CDATA[<p>virtuell Realisticer schrieb:</p>
<blockquote>
<p>Hallo,</p>
<p>das geht hier mittels '&amp;hans[0]'</p>
<p>mfg<br />
v R</p>
</blockquote>
<p>hm, gab der op[] nicht eine Kopie zurück ?<br />
Falls ja, klappts evtl. mit GetAt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/857639</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/857639</guid><dc:creator><![CDATA[phlox81]]></dc:creator><pubDate>Wed, 24 Aug 2005 15:06:22 GMT</pubDate></item><item><title><![CDATA[Reply to Vector daten als block auslesen on Wed, 24 Aug 2005 15:06:52 GMT]]></title><description><![CDATA[<p>phlox81 schrieb:</p>
<blockquote>
<p>Irgendwo hab ich mal gelesen, das der Speicher von Vector immer (fast immer),<br />
zusammenhängend im Speicher steht.</p>
</blockquote>
<p>Soweit mir bekannt ist, ist dieser Umstand als TR bereits in den Standard<br />
aufgenommen worden.</p>
<p>mfg<br />
v R</p>
]]></description><link>https://www.c-plusplus.net/forum/post/857640</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/857640</guid><dc:creator><![CDATA[virtuell Realisticer]]></dc:creator><pubDate>Wed, 24 Aug 2005 15:06:52 GMT</pubDate></item><item><title><![CDATA[Reply to Vector daten als block auslesen on Wed, 24 Aug 2005 15:07:52 GMT]]></title><description><![CDATA[<p>phlox81 schrieb:</p>
<blockquote>
<p>virtuell Realisticer schrieb:</p>
<blockquote>
<p>Hallo,</p>
<p>das geht hier mittels '&amp;hans[0]'</p>
<p>mfg<br />
v R</p>
</blockquote>
<p>hm, gab der op[] nicht eine Kopie zurück ?<br />
Falls ja, klappts evtl. mit GetAt.</p>
</blockquote>
<p>Ne, warum sollte er denn eine Kopie zurueckgeben? Kannst doch auch</p>
<pre><code class="language-cpp">hans[0] = foobar;
</code></pre>
<p>schreiben, wenn du magst.</p>
<p>mfg<br />
v R</p>
]]></description><link>https://www.c-plusplus.net/forum/post/857641</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/857641</guid><dc:creator><![CDATA[virtuell Realisticer]]></dc:creator><pubDate>Wed, 24 Aug 2005 15:07:52 GMT</pubDate></item></channel></rss>