<?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[Ein- und Ausgabe unterschiedlich]]></title><description><![CDATA[<p>Hallo,</p>
<p>wieso bekomme ich nicht die gleichen Werte zurückgeliefert, wenn ich die Datei wieder lese?</p>
<pre><code>#include &lt;fstream&gt;
#include &lt;iostream&gt;

using namespace std;

int main() {
	int i = 777;
	float f = 7.77;
	char x = 'S';
	ofstream fout; //Dateiausgabestromobjekt
	fout.open(&quot;datei.dat&quot;);
	fout &lt;&lt; i &lt;&lt; f &lt;&lt; x &lt;&lt; endl;
	fout.close();
	i = 0;
	f = 0.0;
	x = '0';
	ifstream fin;//Dateieingabestromobjekt
	fin.open(&quot;datei.dat&quot;);
	fin &gt;&gt; i &gt;&gt; f &gt;&gt; x;
	fin.close();
	cout &lt;&lt; &quot;i=&quot; &lt;&lt; i &lt;&lt; &quot; f=&quot; &lt;&lt; f &lt;&lt; &quot; x=&quot; &lt;&lt; x &lt;&lt; endl;
}
</code></pre>
<p>Eingabe:</p>
<pre><code>int i = 777;
	float f = 7.77;
	char x = 'S';
</code></pre>
<p>Ausgabe:</p>
<pre><code>int i = 7777;
	float f = 0.77;
	char x = 'S';
</code></pre>
<p>Grüße<br />
Markuslab</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/327046/ein-und-ausgabe-unterschiedlich</link><generator>RSS for Node</generator><lastBuildDate>Thu, 09 Jul 2026 23:36:09 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/327046.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 20 Jul 2014 20:10:04 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Ein- und Ausgabe unterschiedlich on Sun, 20 Jul 2014 20:10:04 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>wieso bekomme ich nicht die gleichen Werte zurückgeliefert, wenn ich die Datei wieder lese?</p>
<pre><code>#include &lt;fstream&gt;
#include &lt;iostream&gt;

using namespace std;

int main() {
	int i = 777;
	float f = 7.77;
	char x = 'S';
	ofstream fout; //Dateiausgabestromobjekt
	fout.open(&quot;datei.dat&quot;);
	fout &lt;&lt; i &lt;&lt; f &lt;&lt; x &lt;&lt; endl;
	fout.close();
	i = 0;
	f = 0.0;
	x = '0';
	ifstream fin;//Dateieingabestromobjekt
	fin.open(&quot;datei.dat&quot;);
	fin &gt;&gt; i &gt;&gt; f &gt;&gt; x;
	fin.close();
	cout &lt;&lt; &quot;i=&quot; &lt;&lt; i &lt;&lt; &quot; f=&quot; &lt;&lt; f &lt;&lt; &quot; x=&quot; &lt;&lt; x &lt;&lt; endl;
}
</code></pre>
<p>Eingabe:</p>
<pre><code>int i = 777;
	float f = 7.77;
	char x = 'S';
</code></pre>
<p>Ausgabe:</p>
<pre><code>int i = 7777;
	float f = 0.77;
	char x = 'S';
</code></pre>
<p>Grüße<br />
Markuslab</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2409609</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2409609</guid><dc:creator><![CDATA[Markuslab]]></dc:creator><pubDate>Sun, 20 Jul 2014 20:10:04 GMT</pubDate></item><item><title><![CDATA[Reply to Ein- und Ausgabe unterschiedlich on Sun, 20 Jul 2014 20:14:20 GMT]]></title><description><![CDATA[<p>Hast du dir mal datei.dat angeschaut? Dann sollte das Verhalten klar sein.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2409611</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2409611</guid><dc:creator><![CDATA[cat datei.dat]]></dc:creator><pubDate>Sun, 20 Jul 2014 20:14:20 GMT</pubDate></item><item><title><![CDATA[Reply to Ein- und Ausgabe unterschiedlich on Sun, 20 Jul 2014 20:17:41 GMT]]></title><description><![CDATA[<p>Weil du sie hintereinander schreibst - ohne Leerraum dazwischen!</p>
<p>7777.77S</p>
<p>Der Parser für Ganzzahlen hört auf wo er den Punkt sieht. Den lässt er auch stehen. Die ersten Vier '7'er extrahiert er aber und packt sie in den <code>int</code> .</p>
<p>Fließkommazahlen brauchen vor dem Dezimalpunkt keine Ziffer stehen zu haben - es wird so getan als ob es 0 wäre. Dann wird wieder beim 'S' angehalten und dieses stehen gelassen. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/27a1.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--right_arrow"
      title=":arrow_right:"
      alt="➡"
    /> f = 0.77</p>
<p>Der Rest dürfte klar sein.</p>
<p>Lösung:</p>
<pre><code>fout &lt;&lt; i &lt;&lt; ' ' &lt;&lt; f &lt;&lt; ' ' &lt;&lt; x;
</code></pre>
<p>P.S.: Nicht den Stream mit <code>open</code> öffnen. Mach es mit dem Konstruktor!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2409612</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2409612</guid><dc:creator><![CDATA[Columbo]]></dc:creator><pubDate>Sun, 20 Jul 2014 20:17:41 GMT</pubDate></item><item><title><![CDATA[Reply to Ein- und Ausgabe unterschiedlich on Sun, 20 Jul 2014 20:20:06 GMT]]></title><description><![CDATA[<p>7777.77S <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="😃"
    /><br />
Das heißt also, dass beim lesen auf &quot;Typwechsel&quot; geachtet wird?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2409615</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2409615</guid><dc:creator><![CDATA[Markuslab]]></dc:creator><pubDate>Sun, 20 Jul 2014 20:20:06 GMT</pubDate></item><item><title><![CDATA[Reply to Ein- und Ausgabe unterschiedlich on Sun, 20 Jul 2014 20:21:28 GMT]]></title><description><![CDATA[<p>Danke euch Beiden!! <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/2409616</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2409616</guid><dc:creator><![CDATA[Markuslab]]></dc:creator><pubDate>Sun, 20 Jul 2014 20:21:28 GMT</pubDate></item></channel></rss>