<?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[Sinn von cout.put]]></title><description><![CDATA[<p>Was ist eigentlich der Sinn und Zweck von</p>
<pre><code class="language-cpp">cout.put('a');
</code></pre>
<p>? Man kann es benutzen, wenn man nur ein Zeichen ausgeben will. Toll! Das geht auch so:</p>
<pre><code class="language-cpp">cout &lt;&lt; 'a';
</code></pre>
<p>Also, wozu ist diese put-Funktion gut?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/276864/sinn-von-cout-put</link><generator>RSS for Node</generator><lastBuildDate>Wed, 26 Aug 2026 04:56:02 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/276864.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 09 Nov 2010 15:04:08 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Sinn von cout.put on Tue, 09 Nov 2010 15:04:08 GMT]]></title><description><![CDATA[<p>Was ist eigentlich der Sinn und Zweck von</p>
<pre><code class="language-cpp">cout.put('a');
</code></pre>
<p>? Man kann es benutzen, wenn man nur ein Zeichen ausgeben will. Toll! Das geht auch so:</p>
<pre><code class="language-cpp">cout &lt;&lt; 'a';
</code></pre>
<p>Also, wozu ist diese put-Funktion gut?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1977857</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1977857</guid><dc:creator><![CDATA[JIIIm]]></dc:creator><pubDate>Tue, 09 Nov 2010 15:04:08 GMT</pubDate></item><item><title><![CDATA[Reply to Sinn von cout.put on Tue, 09 Nov 2010 15:05:57 GMT]]></title><description><![CDATA[<p>C++ erhebt nicht den Anspruch, minimalistisch zu sein.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1977858</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1977858</guid><dc:creator><![CDATA[knivil]]></dc:creator><pubDate>Tue, 09 Nov 2010 15:05:57 GMT</pubDate></item><item><title><![CDATA[Reply to Sinn von cout.put on Tue, 09 Nov 2010 15:13:54 GMT]]></title><description><![CDATA[<p>Was hat das mit minimalistisch zu tun? Hätte ich gefragt, wieso es ein <code>cout &lt;&lt; endl;</code> gibt, wo man doch <code>cout &lt;&lt; &quot;\n&quot; &lt;&lt; flush;</code> schreiben kann, dann hätte ich dein Argument verstanden. Da das eine eben eine Kurzschreibweise des anderen ist. Aber <code>cout.put</code> bietet doch keinerlei Vorteil. Wann würde man jemals diese Funktion benutzen und was wäre der Vorteil gegenüber <code>cout &lt;&lt;</code> ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1977864</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1977864</guid><dc:creator><![CDATA[JIIIm]]></dc:creator><pubDate>Tue, 09 Nov 2010 15:13:54 GMT</pubDate></item><item><title><![CDATA[Reply to Sinn von cout.put on Tue, 09 Nov 2010 15:22:46 GMT]]></title><description><![CDATA[<p>Vielleicht mag jemand den shift-operator nicht?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1977870</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1977870</guid><dc:creator><![CDATA[krabbels]]></dc:creator><pubDate>Tue, 09 Nov 2010 15:22:46 GMT</pubDate></item><item><title><![CDATA[Reply to Sinn von cout.put on Tue, 09 Nov 2010 15:23:03 GMT]]></title><description><![CDATA[<p>JIIIm schrieb:</p>
<blockquote>
<p>Was ist eigentlich der Sinn und Zweck von</p>
<pre><code class="language-cpp">cout.put('a');
</code></pre>
<p>? Man kann es benutzen, wenn man nur ein Zeichen ausgeben will. Toll! Das geht auch so:</p>
<pre><code class="language-cpp">cout &lt;&lt; 'a';
</code></pre>
<p>Also, wozu ist diese put-Funktion gut?</p>
</blockquote>
<p>Ich finde sie logisch. cout kann nur put. Nur put kennt die privaten Details der Klasse.</p>
<p>Die vielen Operatoren benutzen put und kennen keine privaten Details.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1977872</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1977872</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Tue, 09 Nov 2010 15:23:03 GMT</pubDate></item><item><title><![CDATA[Reply to Sinn von cout.put on Tue, 09 Nov 2010 15:28:43 GMT]]></title><description><![CDATA[<p>OK, dann eben anders: Wozu ist put eine öffentliche Funktion, statt einfach private zu sein? Wozu ist sie für einen Anwender der ostream-Klasse gut? Das wäre so, als würde es in C# neben Console.Write, der ja alle möglichen Datentypen inklusive char übernehmen kann, noch ein Console.WriteChar geben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1977874</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1977874</guid><dc:creator><![CDATA[JIIIm]]></dc:creator><pubDate>Tue, 09 Nov 2010 15:28:43 GMT</pubDate></item><item><title><![CDATA[Reply to Sinn von cout.put on Tue, 09 Nov 2010 15:32:21 GMT]]></title><description><![CDATA[<p>JIIIm schrieb:</p>
<blockquote>
<p>OK, dann eben anders: Wozu ist put eine öffentliche Funktion, statt einfach private zu sein?</p>
</blockquote>
<p>Man muß sie nicht private machen, weil sie keine Gefahr darstellt.<br />
Ich nehme an, vor 20 Jahren war es für die performance interessant, daß alle Operatoren put benutzen, statt den op&lt;&lt; von char, das würde ja einen zusätzlichen Funktionsaufruf gekostet haben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1977876</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1977876</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Tue, 09 Nov 2010 15:32:21 GMT</pubDate></item><item><title><![CDATA[Reply to Sinn von cout.put on Tue, 09 Nov 2010 15:32:52 GMT]]></title><description><![CDATA[<p>Der Unterschied besteht darin, das es sich bei ostream.put('x') um eine unformatierte Ausgabe und bei ostream &lt;&lt; 'a' um eine formatierte Ausgabe handelt.</p>
<p>Beispiel:</p>
<pre><code class="language-cpp">cout &lt;&lt; setw(8) &lt;&lt; 'x' &lt;&lt; endl;
    (cout &lt;&lt; setw(8)).put('x') &lt;&lt; endl;
</code></pre>
<p>Ausgabe:</p>
<pre><code>x
x
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1977877</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1977877</guid><dc:creator><![CDATA[Werner_logoff]]></dc:creator><pubDate>Tue, 09 Nov 2010 15:32:52 GMT</pubDate></item><item><title><![CDATA[Reply to Sinn von cout.put on Tue, 09 Nov 2010 15:34:40 GMT]]></title><description><![CDATA[<p>volkard schrieb:</p>
<blockquote>
<p>Ich finde sie logisch. cout kann nur put. Nur put kennt die privaten Details der Klasse.</p>
<p>Die vielen Operatoren benutzen put und kennen keine privaten Details.</p>
</blockquote>
<p>JIIIm schrieb:</p>
<blockquote>
<p>OK, dann eben anders: Wozu ist put eine öffentliche Funktion, statt einfach private zu sein?</p>
</blockquote>
<p>Habs jetzt nicht überprüft, aber sind Schiebeoperatoren nicht typischerweise global überladen? Dann sollte doch klar sein wieso put öffentlich sein muss. <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/1977878</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1977878</guid><dc:creator><![CDATA[Anonym&amp;lt;&amp;lt;]]></dc:creator><pubDate>Tue, 09 Nov 2010 15:34:40 GMT</pubDate></item><item><title><![CDATA[Reply to Sinn von cout.put on Tue, 09 Nov 2010 15:51:44 GMT]]></title><description><![CDATA[<p>1.) Habe ich schon mal erwaehnt, dass C++ nicht minimalistisch ist. D.h. die gleiche Funktionalitaet kann ueber verschiedene Arten angeboten werden. Wo ist das Problem?<br />
2.) Wird bei &lt;&lt; eine Methode der Klasse cout aufgerufen oder eine ueberladene Funktion? Schaue doch einfach mal nach.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1977885</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1977885</guid><dc:creator><![CDATA[knivil]]></dc:creator><pubDate>Tue, 09 Nov 2010 15:51:44 GMT</pubDate></item><item><title><![CDATA[Reply to Sinn von cout.put on Tue, 09 Nov 2010 23:06:30 GMT]]></title><description><![CDATA[<p>Werner_logoff schrieb:</p>
<blockquote>
<p>Der Unterschied besteht darin, das es sich bei ostream.put('x') um eine unformatierte Ausgabe und bei ostream &lt;&lt; 'a' um eine formatierte Ausgabe handelt.</p>
</blockquote>
<p>Dann lässt man die Formatierung bei cout &lt;&lt; eben weg. Ich kapier immer noch nicht: Wozu ist cout.put <em>gut</em>? (Ich will nicht wissen, was cout.put alles <em>nicht</em> kann.)</p>
<p>knivil schrieb:</p>
<blockquote>
<p>1.) Habe ich schon mal erwaehnt, dass C++ nicht minimalistisch ist. D.h. die gleiche Funktionalitaet kann ueber verschiedene Arten angeboten werden. Wo ist das Problem?</p>
</blockquote>
<p>Es ist kein Problem. Ich möchte nur wissen: Wo verwendet man cout.put, wo cout &lt;&lt; schlechter wäre? size und length, das ist so etwas Redundantes, wo es Geschmackssache ist. Aber cout &lt;&lt; benutzt man sowieso ständig: Bei Strings, ints etc. Wieso sollte irgendjemand bei der Ausgabe eines einzelnen Zeichen plötzlich auf cout.put ausweichen.</p>
<p>knivil schrieb:</p>
<blockquote>
<p>2.) Wird bei &lt;&lt; eine Methode der Klasse cout aufgerufen oder eine ueberladene Funktion? Schaue doch einfach mal nach.</p>
</blockquote>
<p>Es wird eine Funktion der Klasse ostream aufgerufen. cout ist eine Variable. Was hat das mit meiner Frage zu tun?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1978213</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1978213</guid><dc:creator><![CDATA[JIIIm]]></dc:creator><pubDate>Tue, 09 Nov 2010 23:06:30 GMT</pubDate></item><item><title><![CDATA[Reply to Sinn von cout.put on Tue, 09 Nov 2010 23:15:27 GMT]]></title><description><![CDATA[<p>JIIIm schrieb:</p>
<blockquote>
<p>Werner_logoff schrieb:</p>
<blockquote>
<p>Der Unterschied besteht darin, das es sich bei ostream.put('x') um eine unformatierte Ausgabe und bei ostream &lt;&lt; 'a' um eine formatierte Ausgabe handelt.</p>
</blockquote>
<p>Dann lässt man die Formatierung bei cout &lt;&lt; eben weg. Ich kapier immer noch nicht: Wozu ist cout.put <em>gut</em>? (Ich will nicht wissen, was cout.put alles <em>nicht</em> kann.)</p>
</blockquote>
<p>Es geht nicht darum die Formatierung wegzulassen, &lt;&lt; ist immer formatiert. Das ist ganz etwas anderes.</p>
<blockquote>
<p>knivil schrieb:</p>
<blockquote>
<p>1.) Habe ich schon mal erwaehnt, dass C++ nicht minimalistisch ist. D.h. die gleiche Funktionalitaet kann ueber verschiedene Arten angeboten werden. Wo ist das Problem?</p>
</blockquote>
<p>Es ist kein Problem. Ich möchte nur wissen: Wo verwendet man cout.put, wo cout &lt;&lt; schlechter wäre? size und length, das ist so etwas Redundantes, wo es Geschmackssache ist. Aber cout &lt;&lt; benutzt man sowieso ständig: Bei Strings, ints etc. Wieso sollte irgendjemand bei der Ausgabe eines einzelnen Zeichen plötzlich auf cout.put ausweichen.</p>
</blockquote>
<p>Zum Beispiel wenn man einzelne Zeichen unformatiert ausgeben möchte <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/1978218</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1978218</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Tue, 09 Nov 2010 23:15:27 GMT</pubDate></item><item><title><![CDATA[Reply to Sinn von cout.put on Tue, 09 Nov 2010 23:16:38 GMT]]></title><description><![CDATA[<p>JIIIm schrieb:</p>
<blockquote>
<p>Werner_logoff schrieb:</p>
<blockquote>
<p>Der Unterschied besteht darin, das es sich bei ostream.put('x') um eine unformatierte Ausgabe und bei ostream &lt;&lt; 'a' um eine formatierte Ausgabe handelt.</p>
</blockquote>
<p>Dann lässt man die Formatierung bei cout &lt;&lt; eben weg. Ich kapier immer noch nicht: Wozu ist cout.put <em>gut</em>? (Ich will nicht wissen, was cout.put alles <em>nicht</em> kann.)</p>
</blockquote>
<p>Wie meinen? <code>&lt;&lt;</code> wird immer eine formatierte Ausgabe durchführen. Für formatierte Ausgaben wird eben <code>&lt;&lt;</code> verwendet. <code>put</code> dagegen schreibt direkt in den Puffer. Es wird gar nicht geprüft, ob oder was für Formatierungsangaben gemacht wurden. Das kann gerade auch interessant sein, wenn man binäre Daten schreiben möchte.</p>
<p>Grüssli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1978220</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1978220</guid><dc:creator><![CDATA[Dravere]]></dc:creator><pubDate>Tue, 09 Nov 2010 23:16:38 GMT</pubDate></item></channel></rss>