<?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[Aus einem Vektor in ein Binärfile schreiben]]></title><description><![CDATA[<p>einzelnen Werte in eine Datei schreiben. Muß aber jeden Wert einzeln in die var.<br />
eff speicher und ausgeben damit das richtige raus kommt.<br />
Vielleicht kann mir wer einen Tipp geben wie das leichter/besser geht.<br />
Danke</p>
<p>bool noEffect = false;<br />
bool isEffect = true;<br />
std::vector&lt;bool&gt;effect;<br />
for (int cnt = 0; cnt&lt;4; cnt++)<br />
effect.push_back(noEffect);</p>
<p>for ( int cnt = 0; cnt &lt; effect.size(); cnt++)<br />
{<br />
bool eff = effect[cnt]; // diesen schritt will ich auslassen aber wie?<br />
michl.write(reinterpret_cast&lt;char*&gt;(&amp;eff),sizeof(bool));<br />
// muss über bool eff arbeiten, denn bei z.B.: effect[0] = -64<br />
}</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/284598/aus-einem-vektor-in-ein-binärfile-schreiben</link><generator>RSS for Node</generator><lastBuildDate>Fri, 21 Aug 2026 23:17:21 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/284598.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 04 Apr 2011 15:30:09 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Aus einem Vektor in ein Binärfile schreiben on Mon, 04 Apr 2011 15:30:09 GMT]]></title><description><![CDATA[<p>einzelnen Werte in eine Datei schreiben. Muß aber jeden Wert einzeln in die var.<br />
eff speicher und ausgeben damit das richtige raus kommt.<br />
Vielleicht kann mir wer einen Tipp geben wie das leichter/besser geht.<br />
Danke</p>
<p>bool noEffect = false;<br />
bool isEffect = true;<br />
std::vector&lt;bool&gt;effect;<br />
for (int cnt = 0; cnt&lt;4; cnt++)<br />
effect.push_back(noEffect);</p>
<p>for ( int cnt = 0; cnt &lt; effect.size(); cnt++)<br />
{<br />
bool eff = effect[cnt]; // diesen schritt will ich auslassen aber wie?<br />
michl.write(reinterpret_cast&lt;char*&gt;(&amp;eff),sizeof(bool));<br />
// muss über bool eff arbeiten, denn bei z.B.: effect[0] = -64<br />
}</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2044589</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2044589</guid><dc:creator><![CDATA[michl15]]></dc:creator><pubDate>Mon, 04 Apr 2011 15:30:09 GMT</pubDate></item><item><title><![CDATA[Reply to Aus einem Vektor in ein Binärfile schreiben on Mon, 04 Apr 2011 18:22:18 GMT]]></title><description><![CDATA[<p>*nachdenkt* vector&lt;bool&gt; verwendet eine kompaktere Darstellung, um Speicherplatz zu sparen, deshalb liefert der Index-Operator auch keinen bool zurück, sondern eine Hilfsklasse, die sich in den meisten Situationen wie ein bool verhält - Basteleien mit reinterpret_cast gehören zu den Fällen, wo sich der Unterschied bemerkbar macht. Eine portable Lösung dafür fällt mir leider auch nicht ein.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2044683</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2044683</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Mon, 04 Apr 2011 18:22:18 GMT</pubDate></item><item><title><![CDATA[Reply to Aus einem Vektor in ein Binärfile schreiben on Mon, 04 Apr 2011 18:37:11 GMT]]></title><description><![CDATA[<p>Wieviele verschiedene Zustände brauchst du denn? Wenn es wirklich nur einige wenige sind (bspw. bis zu 64) kannst du auch direkt einen 64 bittigen Integer nehmen und mit Bitoperationen einzelne Flags setzen, löschen und abfragen.<br />
Auch kannst du Integer natürlich ohne Probleme in Dateien schreiben und wieder einlesen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2044688</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2044688</guid><dc:creator><![CDATA[nachgefragt]]></dc:creator><pubDate>Mon, 04 Apr 2011 18:37:11 GMT</pubDate></item><item><title><![CDATA[Reply to Aus einem Vektor in ein Binärfile schreiben on Mon, 04 Apr 2011 18:42:55 GMT]]></title><description><![CDATA[<p>ev. std::bitset benutzen?<br />
<a href="http://www.cplusplus.com/reference/stl/bitset/" rel="nofollow">http://www.cplusplus.com/reference/stl/bitset/</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2044692</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2044692</guid><dc:creator><![CDATA[theta]]></dc:creator><pubDate>Mon, 04 Apr 2011 18:42:55 GMT</pubDate></item><item><title><![CDATA[Reply to Aus einem Vektor in ein Binärfile schreiben on Mon, 04 Apr 2011 19:02:58 GMT]]></title><description><![CDATA[<p>Vielleicht so?</p>
<pre><code class="language-cpp">char *isfalse = &quot;0&quot;;
char *istrue = &quot;1&quot;;
std::vector&lt;bool&gt;effect;
for (int cnt = 0; cnt&lt;4; cnt++)
	effect.push_back(noEffect);

for ( size_t cnt = 0; cnt &lt; effect.size(); cnt++)
	michl.write( effect[cnt] ? istrue : isfalse, sizeof(char) );
</code></pre>
<p>EDIT:<br />
Oder falls es auch binär geschrieben werden soll:</p>
<pre><code class="language-cpp">char isfalse[2];
isfalse[0] = isfalse[1] = 0;
char istrue[2];
istrue[0] = 1;
istrue[1] = 0;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2044694</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2044694</guid><dc:creator><![CDATA[EOP]]></dc:creator><pubDate>Mon, 04 Apr 2011 19:02:58 GMT</pubDate></item><item><title><![CDATA[Reply to Aus einem Vektor in ein Binärfile schreiben on Mon, 04 Apr 2011 19:02:02 GMT]]></title><description><![CDATA[<p>Danke für die schnelle Antwort, das macht einiges klar.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2044702</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2044702</guid><dc:creator><![CDATA[mich15]]></dc:creator><pubDate>Mon, 04 Apr 2011 19:02:02 GMT</pubDate></item></channel></rss>