<?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[std::endl ist überflüssig.]]></title><description><![CDATA[<p>Oder?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/202552/std-endl-ist-überflüssig</link><generator>RSS for Node</generator><lastBuildDate>Tue, 06 Oct 2026 21:21:10 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/202552.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 12 Jan 2008 19:56:57 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to std::endl ist überflüssig. on Sat, 12 Jan 2008 19:56:57 GMT]]></title><description><![CDATA[<p>Oder?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1435605</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1435605</guid><dc:creator><![CDATA[query_boy]]></dc:creator><pubDate>Sat, 12 Jan 2008 19:56:57 GMT</pubDate></item><item><title><![CDATA[Reply to std::endl ist überflüssig. on Sat, 12 Jan 2008 20:16:46 GMT]]></title><description><![CDATA[<p>Hi query_boy,</p>
<p>es kommt auf die Definition von überflüssig an.<br />
Man kann z.B. auch ohne std::string arbeiten, aber dennoch ist es sicherlich<br />
nicht überflüssig.<br />
Die Verwendung von std::endl erspart dir das explizite flushen des Stream nach<br />
dem Anhängen des Zeilenumbruch.</p>
<p>Gruß,<br />
CSpille</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1435615</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1435615</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Sat, 12 Jan 2008 20:16:46 GMT</pubDate></item><item><title><![CDATA[Reply to std::endl ist überflüssig. on Sat, 12 Jan 2008 21:01:35 GMT]]></title><description><![CDATA[<p>query_boy schrieb:</p>
<blockquote>
<p>Oder?</p>
</blockquote>
<p>nein, nur meistens <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/1435633</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1435633</guid><dc:creator><![CDATA[queer_boy]]></dc:creator><pubDate>Sat, 12 Jan 2008 21:01:35 GMT</pubDate></item><item><title><![CDATA[Reply to std::endl ist überflüssig. on Sat, 12 Jan 2008 21:34:03 GMT]]></title><description><![CDATA[<p>printf ist ohnehin besser.</p>
<p>*SCNR*</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1435652</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1435652</guid><dc:creator><![CDATA[audacia]]></dc:creator><pubDate>Sat, 12 Jan 2008 21:34:03 GMT</pubDate></item><item><title><![CDATA[Reply to std::endl ist überflüssig. on Sat, 12 Jan 2008 22:00:08 GMT]]></title><description><![CDATA[<p>audacia schrieb:</p>
<blockquote>
<p>printf ist ohnehin besser.</p>
</blockquote>
<p>sowieso, aber das geht am thema vorbei.<br />
topic: 'endl' springt in die nächst zeile, ich glaub 'flush' nicht.<br />
<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/1435663</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1435663</guid><dc:creator><![CDATA[flushing-fan]]></dc:creator><pubDate>Sat, 12 Jan 2008 22:00:08 GMT</pubDate></item><item><title><![CDATA[Reply to std::endl ist überflüssig. on Sat, 12 Jan 2008 22:03:04 GMT]]></title><description><![CDATA[<p>flushing-fan schrieb:</p>
<blockquote>
<p>topic: 'endl' springt in die nächst zeile, ich glaub 'flush' nicht.<br />
<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>
</blockquote>
<p>das stimmt zwar, aber man kann std::endl und std::flush nicht vergleichen, die haben zwei unterscheidliche funktionen.<br />
endl ist eigentlich das gleiche wie &quot;\n&quot;, aber auch noch ein std::flush (bei bedarf)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1435664</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1435664</guid><dc:creator><![CDATA[Heinzelotto]]></dc:creator><pubDate>Sat, 12 Jan 2008 22:03:04 GMT</pubDate></item><item><title><![CDATA[Reply to std::endl ist überflüssig. on Sat, 12 Jan 2008 22:09:00 GMT]]></title><description><![CDATA[<p>ich hatte mal mit so'nem doofen borland-tool (developer-blahblah, irgendwie mit einem fetten X drin) herumgefummelt. der hat bei 'cout's' manchmal nix ausgegeben, erst wenn man endl oder flush am ende hatte.<br />
<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/1435669</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1435669</guid><dc:creator><![CDATA[borland-hasser]]></dc:creator><pubDate>Sat, 12 Jan 2008 22:09:00 GMT</pubDate></item><item><title><![CDATA[Reply to std::endl ist überflüssig. on Sat, 12 Jan 2008 22:14:15 GMT]]></title><description><![CDATA[<p>Das ist normal. Der Output-Stream kann seinen Puffer solange füllen bis flush aufgerufen wird. std::endl ist nur eine komfortable Schreibweise für:</p>
<pre><code class="language-cpp">'\n' &lt;&lt; std::flush;
</code></pre>
<p>Intern ist std::cout zB mit std::cin verknüpft, so dass der Puffer geflusht wird, wenn man auf eine Benutzereingabe wartet.</p>
<p>Gruß<br />
Don06</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1435674</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1435674</guid><dc:creator><![CDATA[Don06]]></dc:creator><pubDate>Sat, 12 Jan 2008 22:14:15 GMT</pubDate></item><item><title><![CDATA[Reply to std::endl ist überflüssig. on Sat, 12 Jan 2008 22:20:47 GMT]]></title><description><![CDATA[<p>hm?</p>
<p>Ich habe auch schon mal &quot;\n&quot; ohne std::flush benutzt.</p>
<p>Hab ich mir das eingebildet, oder sind bei dem Programm dann irgendwelche Nachteile zu erwarten?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1435677</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1435677</guid><dc:creator><![CDATA[obbba]]></dc:creator><pubDate>Sat, 12 Jan 2008 22:20:47 GMT</pubDate></item><item><title><![CDATA[Reply to std::endl ist überflüssig. on Sat, 12 Jan 2008 22:57:30 GMT]]></title><description><![CDATA[<p>nein, nicht im regelfall.</p>
<p>das schlimmste szenario besteht darin, wenn dir dein programm abstürzt, bevor geflusht wurde, dann sind die daten, die noch im puffer waren, weg.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1435694</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1435694</guid><dc:creator><![CDATA[queer_boy]]></dc:creator><pubDate>Sat, 12 Jan 2008 22:57:30 GMT</pubDate></item><item><title><![CDATA[Reply to std::endl ist überflüssig. on Sat, 12 Jan 2008 23:05:27 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>std::endl kannst du meines Wissens komplett vergessen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1435695</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1435695</guid><dc:creator><![CDATA[Wallli]]></dc:creator><pubDate>Sat, 12 Jan 2008 23:05:27 GMT</pubDate></item><item><title><![CDATA[Reply to std::endl ist überflüssig. on Sun, 13 Jan 2008 16:23:07 GMT]]></title><description><![CDATA[<p>obbba schrieb:</p>
<blockquote>
<p>hm?</p>
<p>Ich habe auch schon mal &quot;\n&quot; ohne std::flush benutzt.</p>
<p>Hab ich mir das eingebildet, oder sind bei dem Programm dann irgendwelche Nachteile zu erwarten?</p>
</blockquote>
<p>Das ist implementierungsabhängig. In der Regel wirst Du die Zeilenschaltung auch in der Ausgabe finden. Daher wirst Du in der Regel auch keine Nachteile sehen.</p>
<p>Schreib doch mal ein Programm, welches im Sekundentakt Zeilenweise in eine Datei schreibt. Dann beobachtest Du beispielsweise mit &quot;tail -f&quot;, wie sich der Dateiinhalt verändert. Das machst Du einmal mit &quot;\n&quot; und einmal mit std::endl. Möglicherweise wirst Du einen Unterschied sehen.</p>
<p>Es hängt halt von der Situation ab, ob das relevant ist oder nicht. &quot;\n&quot; ist schneller, da die Daten in größeren Blöcken auf das Zielgerät geschrieben werden. Allerdings ist es nicht vorhersehbar, wann das geschieht.</p>
<p>Wallli schrieb:</p>
<blockquote>
<p>Hallo,</p>
<p>std::endl kannst du meines Wissens komplett vergessen.</p>
</blockquote>
<p>Vergiss es mal ruhig. Oder Du weitest Dein Wissen aus <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="😃"
    /> .</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1435983</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1435983</guid><dc:creator><![CDATA[tntnet]]></dc:creator><pubDate>Sun, 13 Jan 2008 16:23:07 GMT</pubDate></item><item><title><![CDATA[Reply to std::endl ist überflüssig. on Sun, 13 Jan 2008 16:30:59 GMT]]></title><description><![CDATA[<p>Bitte beachten: '\n' und &quot;\n&quot; sind zwei verschiedene Dinge.</p>
<p><a href="http://userpage.fu-berlin.de/~ram/pub/pub_jf47ht40Ht/c++_zeilenformatierung_de" rel="nofollow">http://userpage.fu-berlin.de/~ram/pub/pub_jf47ht40Ht/c++_zeilenformatierung_de</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1435985</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1435985</guid><dc:creator><![CDATA[Erhard Henkes]]></dc:creator><pubDate>Sun, 13 Jan 2008 16:30:59 GMT</pubDate></item><item><title><![CDATA[Reply to std::endl ist überflüssig. on Sun, 13 Jan 2008 17:08:18 GMT]]></title><description><![CDATA[<p>Erhard Henkes schrieb:</p>
<blockquote>
<p>Bitte beachten: '\n' und &quot;\n&quot; sind zwei verschiedene Dinge.</p>
<p><a href="http://userpage.fu-berlin.de/~ram/pub/pub_jf47ht40Ht/c++_zeilenformatierung_de" rel="nofollow">http://userpage.fu-berlin.de/~ram/pub/pub_jf47ht40Ht/c++_zeilenformatierung_de</a></p>
</blockquote>
<p>Das hatten wir doch schonmal im Forum.</p>
<p>Das hier:</p>
<blockquote>
<p>Wenn von C++ in Textdateien geschrieben wird, wird eine mit dem Neuzeilenzeichen abgeschlossenen Zeile automatisch in die passende (binäre) Darstellung des Betriebssystems umgewandelt. Manche Betriebssysteme verwenden ein anderes Zeichen oder eine Folge aus mehreren Zeichen zum Abschluß einer Zeile. Es gibt Betriebssysteme, die Zeilen gar nicht mit einem Abschlußzeichen kennzeichnen, sondern jeder Zeile ihre Länge voranstellen.</p>
</blockquote>
<p>Kann ich weder anhand des Standards noch experiemtell unter Windows/OS X nachvollziehen. Es stimmt zwar, dass 'std::endl' ein systemspezifisches Neue-Zeile-Zeichen ausgibt. Es stimmt m.E. aber <em>nicht</em>, dass '\n' beim Ausgeben entsprechend umgewandelt wird.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1436002</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1436002</guid><dc:creator><![CDATA[Konrad Rudolph]]></dc:creator><pubDate>Sun, 13 Jan 2008 17:08:18 GMT</pubDate></item><item><title><![CDATA[Reply to std::endl ist überflüssig. on Sun, 13 Jan 2008 17:27:44 GMT]]></title><description><![CDATA[<p>Spielt das bei den Standard-Betriebssystemen überhaupt eine Rolle? Ich konnte bisher noch keinen Unterschied feststellen, wenn ich unter Windows eine in Linux erstellte Textdatei öffne oder unter Linux eine unter Windows erstellte.</p>
<p>Ich glaube die erkennen die gängigen Zeilenenden automatisch und wandeln entsprechend um (Binärmodus natürlich ausgenommen).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1436017</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1436017</guid><dc:creator><![CDATA[Unsicherer Programmierer]]></dc:creator><pubDate>Sun, 13 Jan 2008 17:27:44 GMT</pubDate></item><item><title><![CDATA[Reply to std::endl ist überflüssig. on Sun, 13 Jan 2008 17:29:25 GMT]]></title><description><![CDATA[<p>Unsicherer Programmierer schrieb:</p>
<blockquote>
<p>Ich glaube die erkennen die gängigen Zeilenenden automatisch und wandeln entsprechend um</p>
</blockquote>
<p>„Die“ (Betriebssysteme) wandern gar nichts um. Einige kluge Texteditoren tun das, die meisten (zumindest unter Windows) sind zu dumm dazu.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1436019</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1436019</guid><dc:creator><![CDATA[Konrad Rudolph]]></dc:creator><pubDate>Sun, 13 Jan 2008 17:29:25 GMT</pubDate></item><item><title><![CDATA[Reply to std::endl ist überflüssig. on Sun, 13 Jan 2008 19:16:12 GMT]]></title><description><![CDATA[<p>Konrad Rudolph schrieb:</p>
<blockquote>
<p>Kann ich weder anhand des Standards noch experiemtell unter Windows/OS X nachvollziehen.</p>
</blockquote>
<p>Nicht? Ich schon (MSVC 8.0):</p>
<pre><code class="language-cpp">#include &lt;algorithm&gt;
#include &lt;fstream&gt;
#include &lt;iomanip&gt;
#include &lt;iostream&gt;
#include &lt;iterator&gt;

using namespace std;

void print_byte(char ch)
{
	unsigned val = static_cast&lt;unsigned char&gt;(ch);
	cout &lt;&lt; setw(2) &lt;&lt; setfill('0') &lt;&lt; hex &lt;&lt; val &lt;&lt; &quot; &quot;;
}

int main(int argc, char* argv[])
{
	{
		ofstream out(&quot;test.txt&quot;);
		out &lt;&lt; &quot;\n&quot; &lt;&lt; '\n' &lt;&lt; endl;
	}

	{
		ifstream in(&quot;test.txt&quot;, ios::in | ios::binary);
		for_each(istreambuf_iterator&lt;char&gt;(in), istreambuf_iterator&lt;char&gt;(), &amp;::print_byte);
		cout &lt;&lt; endl;
	}

	return 0;
}
</code></pre>
<pre><code>0d 0a 0d 0a 0d 0a
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1436081</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1436081</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Sun, 13 Jan 2008 19:16:12 GMT</pubDate></item><item><title><![CDATA[Reply to std::endl ist überflüssig. on Sun, 13 Jan 2008 20:02:52 GMT]]></title><description><![CDATA[<p>Konrad Rudolph schrieb:</p>
<blockquote>
<p>Einige kluge Texteditoren tun das, die meisten (zumindest unter Windows) sind zu dumm dazu.</p>
</blockquote>
<p>auch unter Windows ist es lediglich Notepad, der damit Schwierigkeiten hat... bereits Wordpad erkennt auch Linux-Zeilenumbrüche richtig</p>
<p>zum Thema:</p>
<blockquote>
<p>Some people also believe that sending <code>endl</code> down an output stream only writes a newline. This is incorrect; after a newline is written, the buffer is also flushed. Perhaps this is the effect you want when writing to a screen -- get the text out as soon as possible, etc -- but the buffering is largely wasted when doing this to a file.</p>
</blockquote>
<p>kommt also drauf an, was man erreichen will... bei einem <code>cout</code> ist <code>endl</code> sicherlich sinnvoll, bei Dateioperationen sollte man dagegen \n verwenden, wenn man lediglich eine neue Zeile haben will</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1436101</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1436101</guid><dc:creator><![CDATA[zwutz]]></dc:creator><pubDate>Sun, 13 Jan 2008 20:02:52 GMT</pubDate></item><item><title><![CDATA[Reply to std::endl ist überflüssig. on Mon, 14 Jan 2008 11:38:22 GMT]]></title><description><![CDATA[<p>Die Frage ist da doch eher ob es die Aufgabe eines Texteditors (nicht &quot;Schreibprogramm&quot;) die Zeilenenden als solche zu erkennen oder einfach nur das auszugeben, was in der Datei steht.<br />
Selbst Emacs hat da manchmal Schwierigkeiten.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1436300</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1436300</guid><dc:creator><![CDATA[Fellhuhn]]></dc:creator><pubDate>Mon, 14 Jan 2008 11:38:22 GMT</pubDate></item></channel></rss>