<?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[Formatierung]]></title><description><![CDATA[<p>Hi!<br />
Hab mal ne Frage. Ist es mit einfachen Mitteln (printf, o.ä.) möglich einen Text auf der Mitte des Konsolenfensters auszugeben? Also sowohl vertikal als auch horizontal zu zentrieren? Danke für eure Antworten!</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/198403/formatierung</link><generator>RSS for Node</generator><lastBuildDate>Fri, 02 Oct 2026 03:29:25 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/198403.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 21 Nov 2007 11:42:28 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Formatierung on Wed, 21 Nov 2007 11:42:28 GMT]]></title><description><![CDATA[<p>Hi!<br />
Hab mal ne Frage. Ist es mit einfachen Mitteln (printf, o.ä.) möglich einen Text auf der Mitte des Konsolenfensters auszugeben? Also sowohl vertikal als auch horizontal zu zentrieren? Danke für eure Antworten!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1407253</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1407253</guid><dc:creator><![CDATA[Koli]]></dc:creator><pubDate>Wed, 21 Nov 2007 11:42:28 GMT</pubDate></item><item><title><![CDATA[Reply to Formatierung on Wed, 21 Nov 2007 11:47:43 GMT]]></title><description><![CDATA[<p>Es ist möglich, aber nicht mit einfachen Mitteln - dazu müsstest du zunächst die Größe des Konsolenfensters bestimmen und anschließend den Cursor an die richtige Anfangsposition für die Ausgabe schieben (beides geht nur mit Systemfunktionen).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1407258</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1407258</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Wed, 21 Nov 2007 11:47:43 GMT</pubDate></item><item><title><![CDATA[Reply to Formatierung on Wed, 21 Nov 2007 11:55:01 GMT]]></title><description><![CDATA[<p>Ist eigentlich nicht vorgesehen dafür. Aber du kannst mittels Zeilenumbrüchen ('\n) und Leerzeichen den Cursor so hinschieben, dass er passt. Die übliche Methode ist aber, die Konsolenfensterbreite- und höhe zu ermitteln, jeweils die Hälfte davon bilden, und per gotoxy() den Cursor an die Stelle platzieren. So ist er dann auch schön zentriert. Hier mal eine gotoxy()-Implementation:</p>
<pre><code class="language-cpp">void gotoxy (long x, long y)
{
    COORD coord;
    coord.X = x;
    coord.Y = y;

    HANDLE ConsoleBuffer;
    ConsoleBuffer = GetStdHandle (STD_OUTPUT_HANDLE);
    SetConsoleCursorPosition (ConsoleBuffer, coord);
}
</code></pre>
<p>Oder so kannst du die Fensterbreite oder Höhe der Konsole ermitteln. Vergiss aber nicht, zuvor das Objekt von ConsoleBuffer zu erstellen (ist bereits im obigen Code gezeigt worden):</p>
<pre><code class="language-cpp">inline void GetCSBI ()
{
    GetConsoleScreenBufferInfo(ConsoleBuffer, &amp;CSBI);
}

short GetConsoleScreenSizeX ()
{
    GetCSBI ();
    return CSBI.srWindow.Right - CSBI.srWindow.Left + 1;
}

short GetConsoleScreenSizeY ()
{
    GetCSBI ();
    return CSBI.srWindow.Bottom - CSBI.srWindow.Top + 1;
}

short GetConsoleCursorPosX ()
{
    GetCSBI ();
    return CSBI.dwCursorPosition.X;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1407263</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1407263</guid><dc:creator><![CDATA[mikey]]></dc:creator><pubDate>Wed, 21 Nov 2007 11:55:01 GMT</pubDate></item><item><title><![CDATA[Reply to Formatierung on Wed, 21 Nov 2007 13:14:10 GMT]]></title><description><![CDATA[<p>mikey schrieb:</p>
<blockquote>
<p>...</p>
<pre><code class="language-cpp">COORD ...
    HANDLE ...
    ... GetStdHandle (STD_OUTPUT_HANDLE);...
    ...SetConsoleCursorPosition (...
    ...GetConsoleScreenBufferInfo(...
    ...GetCSBI ...
</code></pre>
</blockquote>
<p>Wat sin' dat denn für Vögel ?</p>
<p>Gruß,</p>
<p>Simon2.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1407309</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1407309</guid><dc:creator><![CDATA[Simon2]]></dc:creator><pubDate>Wed, 21 Nov 2007 13:14:10 GMT</pubDate></item><item><title><![CDATA[Reply to Formatierung on Wed, 21 Nov 2007 13:37:39 GMT]]></title><description><![CDATA[<p>WinAPI ^^</p>
<pre><code class="language-cpp">void gotoxy (long x, long y)
{
    ::COORD coord = { x, y };
    ::SetConsoleCursorPosition(::GetStdHandle(STD_OUTPUT_HANDLE), coord);
}
</code></pre>
<p>ist halt osdependet und unschön <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_tongue"
      title=":P"
      alt="😛"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1407331</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1407331</guid><dc:creator><![CDATA[*D*Evil]]></dc:creator><pubDate>Wed, 21 Nov 2007 13:37:39 GMT</pubDate></item><item><title><![CDATA[Reply to Formatierung on Wed, 21 Nov 2007 14:21:07 GMT]]></title><description><![CDATA[<p>(D)Evil schrieb:</p>
<blockquote>
<p>WinAPI ^^...</p>
</blockquote>
<p>Achso ...</p>
<p>(D)Evil schrieb:</p>
<blockquote>
<p>...ist halt osdependent und unschön <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_tongue"
      title=":P"
      alt="😛"
    /></p>
</blockquote>
<p>Hatte ich auch stark vermutet und hätte es besser gefunden, wenn mikey darauf hingewiesen hätte.</p>
<p>Gruß,</p>
<p>Simon2.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1407375</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1407375</guid><dc:creator><![CDATA[Simon2]]></dc:creator><pubDate>Wed, 21 Nov 2007 14:21:07 GMT</pubDate></item><item><title><![CDATA[Reply to Formatierung on Wed, 21 Nov 2007 14:33:35 GMT]]></title><description><![CDATA[<p>Sorry, ich hätte das schon ansprechen sollen. <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="🙂"
    /> Ja, um es deutlich zu betonen: Es handelt sich hierbei um die WinAPI, und der Code ist platformabhängig. Und ob es &quot;unschön&quot; ist, lässt sich hier im Forum kaum ansprechen, da es wieder in einer unendlichen Diskussion endet. Deshalb sag ich mal garnichts dazu :p</p>
<p>@(D)evil: Die verkürzte gotoxy() Funktion ist schon besser so. Bin einbisschen danebengestanden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1407379</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1407379</guid><dc:creator><![CDATA[mikey]]></dc:creator><pubDate>Wed, 21 Nov 2007 14:33:35 GMT</pubDate></item></channel></rss>