<?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[cout umbiegen?]]></title><description><![CDATA[<p>Ist es möglich cout via C++-Standard auf einen anderen Buffer umzubiegen?</p>
<p>Hintergrund: cout schreibt mir immer auf STD_OUTPUT_HANDLE, ich möchte aber, dass es auf einen von mir definierten Console-Screen-Buffer schreibt. Also wär mir nach einem Wechsel des CSB folgendes recht:</p>
<pre><code class="language-cpp">cout &lt;&lt; flush;
cout.setbuf( new_csb.buffer );
</code></pre>
<p>Hab ich da Chancen?</p>
<p>MfG SideWinder</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/177484/cout-umbiegen</link><generator>RSS for Node</generator><lastBuildDate>Sat, 27 Jun 2026 01:16:28 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/177484.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 31 Mar 2007 23:25:53 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to cout umbiegen? on Sat, 31 Mar 2007 23:25:53 GMT]]></title><description><![CDATA[<p>Ist es möglich cout via C++-Standard auf einen anderen Buffer umzubiegen?</p>
<p>Hintergrund: cout schreibt mir immer auf STD_OUTPUT_HANDLE, ich möchte aber, dass es auf einen von mir definierten Console-Screen-Buffer schreibt. Also wär mir nach einem Wechsel des CSB folgendes recht:</p>
<pre><code class="language-cpp">cout &lt;&lt; flush;
cout.setbuf( new_csb.buffer );
</code></pre>
<p>Hab ich da Chancen?</p>
<p>MfG SideWinder</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1256906</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1256906</guid><dc:creator><![CDATA[SideWinder]]></dc:creator><pubDate>Sat, 31 Mar 2007 23:25:53 GMT</pubDate></item><item><title><![CDATA[Reply to cout umbiegen? on Sat, 31 Mar 2007 23:45:56 GMT]]></title><description><![CDATA[<p>Ist das hier &quot;korrekt&quot;?</p>
<pre><code class="language-cpp">#include &lt;fcntl.h&gt;
#include &lt;io.h&gt;

...

int handle = _open_osfhandle(reinterpret_cast&lt;intptr_t&gt;(GetBuffer(buffer).buffer), _O_TEXT);
FILE* fp = _fdopen(handle, &quot;w&quot;);
*stdout = *fp;
ios::sync_with_stdio();
</code></pre>
<p>Ich weiß nicht mher unbedingt C++-Standard, aber hier könnte noch am ehesten jemand davon wissen. Ansonsten bitte verschieben nach WinAPI <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>
<p>MfG SideWinder</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1256913</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1256913</guid><dc:creator><![CDATA[SideWinder]]></dc:creator><pubDate>Sat, 31 Mar 2007 23:45:56 GMT</pubDate></item><item><title><![CDATA[Reply to cout umbiegen? on Sun, 01 Apr 2007 00:16:45 GMT]]></title><description><![CDATA[<p>Scheint international anerkannt zu sein. Ein Problem habe ich noch: Normalerweise wird ausgegeben was man mit cin eingibt, das scheint nicht zu funktionieren.</p>
<p>Hat jeder Screen-Buffer seinen eigenes InputHandle? Wie kann ich das beziehen?</p>
<p>MfG SideWinder</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1256917</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1256917</guid><dc:creator><![CDATA[SideWinder]]></dc:creator><pubDate>Sun, 01 Apr 2007 00:16:45 GMT</pubDate></item><item><title><![CDATA[Reply to cout umbiegen? on Mon, 02 Apr 2007 06:25:10 GMT]]></title><description><![CDATA[<p>SideWinder schrieb:</p>
<blockquote>
<p>Ist das hier &quot;korrekt&quot;?</p>
</blockquote>
<p>Nicht wirklich. Da war deine erste Variante schon besser (abgesehen davon, daß die richtige Methode <code>rdbuf()</code> heißt):</p>
<pre><code class="language-cpp">ofstream ofile(&quot;cout.txt&quot;);
streambuf* oldbuf=cout.rdbuf();//alten Ausgabepuffer zwischenspeichern
cout.rdbuf(ofile.rdbuf());
...
//alle cout-Ausgaben werden in die Datei umgeleitet
...
cout.rdbuf(oldbuf);//Puffer rekonstruieren
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1257737</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1257737</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Mon, 02 Apr 2007 06:25:10 GMT</pubDate></item><item><title><![CDATA[Reply to cout umbiegen? on Mon, 02 Apr 2007 06:41:11 GMT]]></title><description><![CDATA[<p>Wäre ein solches &quot;Umbiegen&quot; eine globale änderung oder nur lokal z.B. innerhalb einer Klasse oder Übersetzungseinheit?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1257739</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1257739</guid><dc:creator><![CDATA[darthdespotism]]></dc:creator><pubDate>Mon, 02 Apr 2007 06:41:11 GMT</pubDate></item><item><title><![CDATA[Reply to cout umbiegen? on Mon, 02 Apr 2007 06:47:24 GMT]]></title><description><![CDATA[<p>Kommt ganz darauf an, wie groß du &quot;global&quot; definierst - das betrifft afaik dein gesamtes Programm.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1257741</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1257741</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Mon, 02 Apr 2007 06:47:24 GMT</pubDate></item><item><title><![CDATA[Reply to cout umbiegen? on Mon, 02 Apr 2007 07:34:05 GMT]]></title><description><![CDATA[<p>Gut genau das meinte ich.<br />
Thx</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1257752</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1257752</guid><dc:creator><![CDATA[darthdespotism]]></dc:creator><pubDate>Mon, 02 Apr 2007 07:34:05 GMT</pubDate></item><item><title><![CDATA[Reply to cout umbiegen? on Mon, 02 Apr 2007 07:53:54 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/10318">@CSToll</a>: Und wie kann ich da auf einen anderen console screen buffer umbiegen? Wohl gar nicht, nein ich glaube schon, dass ich auf dem richtigen Weg bin. Allerdings sieht man bei cin die Eingabe nicht mehr, also irgendwo muss ich noch ein Rädchen umdrehen.</p>
<p>MfG SideWinder</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1257757</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1257757</guid><dc:creator><![CDATA[SideWinder]]></dc:creator><pubDate>Mon, 02 Apr 2007 07:53:54 GMT</pubDate></item><item><title><![CDATA[Reply to cout umbiegen? on Mon, 02 Apr 2007 08:21:26 GMT]]></title><description><![CDATA[<p>SideWinder schrieb:</p>
<blockquote>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/10318">@CSToll</a>: Und wie kann ich da auf einen anderen console screen buffer umbiegen? Wohl gar nicht, nein ich glaube schon, dass ich auf dem richtigen Weg bin. Allerdings sieht man bei cin die Eingabe nicht mehr, also irgendwo muss ich noch ein Rädchen umdrehen.</p>
<p>MfG SideWinder</p>
</blockquote>
<p>Dazu musst du dich natürlich an die Spielregeln halten und für deine Konsole einen Streambuffer implementieren.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1257762</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1257762</guid><dc:creator><![CDATA[lolz]]></dc:creator><pubDate>Mon, 02 Apr 2007 08:21:26 GMT</pubDate></item></channel></rss>