<?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[char* in UTF8 ausgeben -&amp;gt; cout &amp;lt; str &amp;lt;&amp;lt; endl;]]></title><description><![CDATA[<p>Sorry, war eben nicht eingeloggt!<br />
Ich bin cHunter!</p>
<p>---------------------------------------------------------------------------</p>
<p>Hallo!</p>
<p>Eigentlich entwickel ich ja bevorzugt in Objective-C.</p>
<p>Auch habe ich ein wenig Programmiererfahren in C++ nur mein aktuelles Problem lässt sich für mich so einfach nicht lösen.</p>
<p>Ich möchte das Problem mal etwas skizzieren:</p>
<pre><code class="language-cpp">char *variable = &quot;Öö Üü Ää èÈ&quot;;

cout &lt;&lt; &quot;variable: &quot; &lt;&lt; variable &lt;&lt; endl;

Konsolenausgabe:

variable: Í÷ ▄³ ─õ Þ╚
</code></pre>
<p>Ich denke, das cout nur ASCII &quot;versteht&quot;. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<p>Was muss ich tun um die variable über cout in UTF8 ausgeben lassen zu können?<br />
Ich habe schon zig Foren durchsucht und in der Lektüre nachgeschaut - bisher konnte ich noch keinen guten Lösungsansatz finden der auch tatsächlich funktionierte.</p>
<p>Über jede Hilfe würde ich mich sehr freuen! :xmas1:</p>
<p><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="➡"
    /></p>
<p>Ich möchte den Wert der Variable nicht nur in UTF8 auf der Konsole ausgeben sondern möchte mit dem Wert im UTF8-Zeichensatz weiterarbeiten.<br />
Also Beispielsweise in einer Datenbank ablegen können - in UTF8 - oder in eine Textdatei schreiben.</p>
<p><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="➡"
    /></p>
<p>Schönen Gruss, cHunter *gg</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/296181/char-in-utf8-ausgeben-gt-cout-lt-str-lt-lt-endl</link><generator>RSS for Node</generator><lastBuildDate>Sat, 15 Aug 2026 02:53:30 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/296181.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 29 Nov 2011 15:50:01 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to char* in UTF8 ausgeben -&amp;gt; cout &amp;lt; str &amp;lt;&amp;lt; endl; on Tue, 29 Nov 2011 15:58:57 GMT]]></title><description><![CDATA[<p>Sorry, war eben nicht eingeloggt!<br />
Ich bin cHunter!</p>
<p>---------------------------------------------------------------------------</p>
<p>Hallo!</p>
<p>Eigentlich entwickel ich ja bevorzugt in Objective-C.</p>
<p>Auch habe ich ein wenig Programmiererfahren in C++ nur mein aktuelles Problem lässt sich für mich so einfach nicht lösen.</p>
<p>Ich möchte das Problem mal etwas skizzieren:</p>
<pre><code class="language-cpp">char *variable = &quot;Öö Üü Ää èÈ&quot;;

cout &lt;&lt; &quot;variable: &quot; &lt;&lt; variable &lt;&lt; endl;

Konsolenausgabe:

variable: Í÷ ▄³ ─õ Þ╚
</code></pre>
<p>Ich denke, das cout nur ASCII &quot;versteht&quot;. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<p>Was muss ich tun um die variable über cout in UTF8 ausgeben lassen zu können?<br />
Ich habe schon zig Foren durchsucht und in der Lektüre nachgeschaut - bisher konnte ich noch keinen guten Lösungsansatz finden der auch tatsächlich funktionierte.</p>
<p>Über jede Hilfe würde ich mich sehr freuen! :xmas1:</p>
<p><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="➡"
    /></p>
<p>Ich möchte den Wert der Variable nicht nur in UTF8 auf der Konsole ausgeben sondern möchte mit dem Wert im UTF8-Zeichensatz weiterarbeiten.<br />
Also Beispielsweise in einer Datenbank ablegen können - in UTF8 - oder in eine Textdatei schreiben.</p>
<p><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="➡"
    /></p>
<p>Schönen Gruss, cHunter *gg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2150549</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2150549</guid><dc:creator><![CDATA[cHunter]]></dc:creator><pubDate>Tue, 29 Nov 2011 15:58:57 GMT</pubDate></item><item><title><![CDATA[Reply to char* in UTF8 ausgeben -&amp;gt; cout &amp;lt; str &amp;lt;&amp;lt; endl; on Tue, 29 Nov 2011 16:16:21 GMT]]></title><description><![CDATA[<p>Das ist absolut Compilerabhängig. Zum beispiel, ob er die Umlaute im Quelltext akzeptiert. Und selbst dann ist noch nicht garantiert, dass er sie in string-Literalen auch akzeptiert. In C++11 gibts utf8-Stringliterale. Damits dort auch portabel ist, müsstest du die Umlaute dann allerdings trotzdem noch mit \uXXXX unicode-Codierungen angeben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2150565</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2150565</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Tue, 29 Nov 2011 16:16:21 GMT</pubDate></item><item><title><![CDATA[Reply to char* in UTF8 ausgeben -&amp;gt; cout &amp;lt; str &amp;lt;&amp;lt; endl; on Tue, 29 Nov 2011 16:49:36 GMT]]></title><description><![CDATA[<p>Vielen Dank für deine Unterstützung!</p>
<p>Ich habe nun einen Ansatz gefunden - zumindest sieht es sehr danach aus:</p>
<pre><code class="language-cpp">wchar_t wData[200];
MultiByteToWideChar(CP_UTF8, 0, &quot;hallöle&quot;, -1, wData, 200);

wcout &lt;&lt; &quot;# &quot; &lt;&lt; wData &lt;&lt; endl;

Konsolenausgabe:

# hall
</code></pre>
<p>Er bricht vor dem ö ab.</p>
<p>Quelle: <a href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd319072%28v=vs.85%29.aspx" rel="nofollow">http://msdn.microsoft.com/en-us/library/windows/desktop/dd319072(v=vs.85).aspx</a></p>
<p>Wieso könnte das so nicht funktionieren? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2150578</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2150578</guid><dc:creator><![CDATA[cHunter]]></dc:creator><pubDate>Tue, 29 Nov 2011 16:49:36 GMT</pubDate></item><item><title><![CDATA[Reply to char* in UTF8 ausgeben -&amp;gt; cout &amp;lt; str &amp;lt;&amp;lt; endl; on Tue, 29 Nov 2011 16:57:50 GMT]]></title><description><![CDATA[<p>Nochmal:</p>
<p>pumuckl schrieb:</p>
<blockquote>
<p>Zum beispiel, ob er [der Compiler] <strong>die Umlaute im Quelltext</strong> akzeptiert. Und selbst dann ist noch nicht garantiert, <strong>dass er sie in string-Literalen auch akzeptiert</strong>.</p>
</blockquote>
]]></description><link>https://www.c-plusplus.net/forum/post/2150580</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2150580</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Tue, 29 Nov 2011 16:57:50 GMT</pubDate></item><item><title><![CDATA[Reply to char* in UTF8 ausgeben -&amp;gt; cout &amp;lt; str &amp;lt;&amp;lt; endl; on Tue, 29 Nov 2011 17:01:13 GMT]]></title><description><![CDATA[<p>pumuckl schrieb:</p>
<blockquote>
<p>Das ist absolut Compilerabhängig. Zum beispiel, ob er die Umlaute im Quelltext akzeptiert. Und selbst dann ist noch nicht garantiert, dass er sie in string-Literalen auch akzeptiert. In C++11 gibts utf8-Stringliterale. Damits dort auch portabel ist, müsstest du die Umlaute dann allerdings trotzdem noch mit \uXXXX unicode-Codierungen angeben.</p>
</blockquote>
<p>Danke für deine wertvolle Anregung.</p>
<p>Ich habe soeben bemerkt, dass das Zielsystem kein UTF-8 erwartet sondern ANSI.</p>
<p>Nun funktioniert das auch mit meinen Sonderzeichen.</p>
<p><strong>Nachfolgend meine Lösung für die Nachwelt:</strong></p>
<pre><code class="language-cpp">void Class::strcpy_cw(wchar_t* Dest, char* Src)
{
    // e.g. 255 
    MultiByteToWideChar(CP_ACP, 0, Src, -1, Dest, 255);
}
</code></pre>
<p>Schönen Gruss, cHunter^^</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2150582</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2150582</guid><dc:creator><![CDATA[cHunter]]></dc:creator><pubDate>Tue, 29 Nov 2011 17:01:13 GMT</pubDate></item></channel></rss>