<?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[Konvertieren von union-char to string ???]]></title><description><![CDATA[<p>Hallo Leute!</p>
<p>Ich habe gerade probiert einen char eines union in einen String zu formatieren, wie anhand folgenden Beispiels ersichtlich ist.<br />
Den Fehlercode habe ich beigefügt, vielleicht kennt den wer??<br />
Das zweite Beispiel was ich probierte, funktionierte ganz normal.<br />
Kann man die union char überhaupt nicht in string formatieren ??</p>
<pre><code class="language-cpp">//Bsp 1

union uByte 
{ 
long lByte; 
char cByte[4]; 
};

uByte xy;

xy.lByte=0x32A43B33;
char part1 = xy.cByte[0];
char part2 = xy.cByte[1];
char part3 = xy.cByte[2];
char part4 = xy.cByte[3];

std::string teststring = part1;  // Konvertieren von char in string
                                 // Fehler !!
/* error C2440: 'initializing' : 'char' kann nicht in 'class std::basic_string&lt;char,struct std::char_traits&lt;char&gt;,class std::allocator&lt;char&gt; &gt;' konvertiert werden */

//Bsp 2
char test[] = &quot;c:/&quot;; 
std::string tstr = test; 
tstr += &quot;arial.ttf&quot;;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/256351/konvertieren-von-union-char-to-string</link><generator>RSS for Node</generator><lastBuildDate>Fri, 11 Sep 2026 09:10:26 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/256351.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 11 Dec 2009 14:15:13 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Konvertieren von union-char to string ??? on Fri, 11 Dec 2009 14:15:13 GMT]]></title><description><![CDATA[<p>Hallo Leute!</p>
<p>Ich habe gerade probiert einen char eines union in einen String zu formatieren, wie anhand folgenden Beispiels ersichtlich ist.<br />
Den Fehlercode habe ich beigefügt, vielleicht kennt den wer??<br />
Das zweite Beispiel was ich probierte, funktionierte ganz normal.<br />
Kann man die union char überhaupt nicht in string formatieren ??</p>
<pre><code class="language-cpp">//Bsp 1

union uByte 
{ 
long lByte; 
char cByte[4]; 
};

uByte xy;

xy.lByte=0x32A43B33;
char part1 = xy.cByte[0];
char part2 = xy.cByte[1];
char part3 = xy.cByte[2];
char part4 = xy.cByte[3];

std::string teststring = part1;  // Konvertieren von char in string
                                 // Fehler !!
/* error C2440: 'initializing' : 'char' kann nicht in 'class std::basic_string&lt;char,struct std::char_traits&lt;char&gt;,class std::allocator&lt;char&gt; &gt;' konvertiert werden */

//Bsp 2
char test[] = &quot;c:/&quot;; 
std::string tstr = test; 
tstr += &quot;arial.ttf&quot;;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1821225</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1821225</guid><dc:creator><![CDATA[steve888]]></dc:creator><pubDate>Fri, 11 Dec 2009 14:15:13 GMT</pubDate></item><item><title><![CDATA[Reply to Konvertieren von union-char to string ??? on Fri, 11 Dec 2009 14:29:28 GMT]]></title><description><![CDATA[<p>std::string hat keinen Konstruktor mit einem einzelnen char als Argument. Ein paar andere Möglichkeiten:</p>
<p>Kopierkonstruktor verwenden, der kennt char:</p>
<pre><code class="language-cpp">std::string teststring;
teststring = part1;
</code></pre>
<p>Anderen Konstruktor verwenden, zum Beispiel diesen:</p>
<pre><code class="language-cpp">std::string teststring(1,part1);
</code></pre>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/26a0.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--warning"
      title=":warning:"
      alt="⚠"
    /> Ist ein schönes Beispiel dafür, dass = bei einer Initialisierung eben nicht den Kopierkonstruktor aufruft. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/26a0.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--warning"
      title=":warning:"
      alt="⚠"
    /></p>
<p>edit: Und für die Zukunft hier noch eine Übersicht über die unterschiedlichen Konstruktoren von std::string:<br />
<a href="http://www.cplusplus.com/reference/string/string/operator=/" rel="nofollow">http://www.cplusplus.com/reference/string/string/operator=/</a><br />
<a href="http://www.cplusplus.com/reference/string/string/string/" rel="nofollow">http://www.cplusplus.com/reference/string/string/string/</a></p>
<p>edit2: Und mit der Union hat das übrigens nichts zu tun, falls du das nicht verstanden haben solltest. Das ist nur Zufall, dass du beim Arbeiten mit Unions (wozu eigentlich? Unions braucht man fast nie. Das sieht gefährlich undefiniert aus, was du da machen willst) auf das Problem gestoßen bist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1821231</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1821231</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Fri, 11 Dec 2009 14:29:28 GMT</pubDate></item><item><title><![CDATA[Reply to Konvertieren von union-char to string ??? on Fri, 11 Dec 2009 14:57:35 GMT]]></title><description><![CDATA[<p>Danke, hat mir viel geholfen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1821243</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1821243</guid><dc:creator><![CDATA[steve888]]></dc:creator><pubDate>Fri, 11 Dec 2009 14:57:35 GMT</pubDate></item><item><title><![CDATA[Reply to Konvertieren von union-char to string ??? on Fri, 11 Dec 2009 15:13:18 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/19375">@SeppJ</a><br />
Du verwechselst Kopierkonstruktor und Zuweisung.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1821248</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1821248</guid><dc:creator><![CDATA[rüdiger]]></dc:creator><pubDate>Fri, 11 Dec 2009 15:13:18 GMT</pubDate></item><item><title><![CDATA[Reply to Konvertieren von union-char to string ??? on Fri, 11 Dec 2009 16:11:44 GMT]]></title><description><![CDATA[<p>SeppJ schrieb:</p>
<blockquote>
<p>Kopierkonstruktor verwenden, der kennt char:</p>
<pre><code class="language-cpp">std::string teststring;
teststring = part1;
</code></pre>
<p>[...]</p>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/26a0.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--warning"
      title=":warning:"
      alt="⚠"
    /> Ist ein schönes Beispiel dafür, dass = bei einer Initialisierung eben nicht den Kopierkonstruktor aufruft. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/26a0.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--warning"
      title=":warning:"
      alt="⚠"
    /></p>
</blockquote>
<p>Das ist eben keine Initialisierung, sondern eine Zuweisung mittels <code>operator=</code> . Der Kopierkonstruktor wird auch nicht aufgerufen (möglicherweise intern, aber das ist ein Implementierungsdetail).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1821269</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1821269</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Fri, 11 Dec 2009 16:11:44 GMT</pubDate></item><item><title><![CDATA[Reply to Konvertieren von union-char to string ??? on Fri, 11 Dec 2009 16:42:26 GMT]]></title><description><![CDATA[<p>Ups, ja. Das meinte ich. Sprachlicher Ausrutscher.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1821291</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1821291</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Fri, 11 Dec 2009 16:42:26 GMT</pubDate></item></channel></rss>