<?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[std::string, char *]]></title><description><![CDATA[<p>Hallo,<br />
ich habe einen Thread und übergebe diesen einen void *... Ich caste also meinen std::string(...).c_str() nach char *... Jedoch ist danach die Variable leer?</p>
<p>Was kann ich tun? Rufe ich die Funktion direkt auf ohne std::string klappt es <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
<p>Vielen Dank im Voraus!</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/192999/std-string-char</link><generator>RSS for Node</generator><lastBuildDate>Tue, 30 Jun 2026 17:28:07 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/192999.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 20 Sep 2007 19:21:12 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to std::string, char * on Thu, 20 Sep 2007 19:21:12 GMT]]></title><description><![CDATA[<p>Hallo,<br />
ich habe einen Thread und übergebe diesen einen void *... Ich caste also meinen std::string(...).c_str() nach char *... Jedoch ist danach die Variable leer?</p>
<p>Was kann ich tun? Rufe ich die Funktion direkt auf ohne std::string klappt es <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
<p>Vielen Dank im Voraus!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1369665</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1369665</guid><dc:creator><![CDATA[Hilfe123]]></dc:creator><pubDate>Thu, 20 Sep 2007 19:21:12 GMT</pubDate></item><item><title><![CDATA[Reply to std::string, char * on Thu, 20 Sep 2007 19:25:07 GMT]]></title><description><![CDATA[<p>c_str() legt einen *temporären Puffer an. Der ist dann ungültig, wenn er später verwendet wird...<br />
Zeig mal bitte den passenden Code...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1369673</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1369673</guid><dc:creator><![CDATA[Jochen Kalmbach]]></dc:creator><pubDate>Thu, 20 Sep 2007 19:25:07 GMT</pubDate></item><item><title><![CDATA[Reply to std::string, char * on Thu, 20 Sep 2007 19:28:48 GMT]]></title><description><![CDATA[<p>? wie willst du das denn machen? Castest du etwa das const weg? Böseböse ...</p>
<pre><code class="language-cpp">std::string foo;
const char* bar = foo.c_str();
/*! BÖSE !*/char* dest = const_cast&lt;char*&gt;(bar);/*! BÖSE !*/
</code></pre>
<pre><code class="language-cpp">std::string foo;
std::vector&lt;char&gt; bar(foo.begin(), foo.end());
bar.push_back(0);
char* dest = &amp;bar[0];
</code></pre>
<p><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="😃"
    /> schon eher <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /> Aber du musst immer gucken das der Bereich auf den der Zeiger zeigt auch noch existiert!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1369678</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1369678</guid><dc:creator><![CDATA[*D*Evil]]></dc:creator><pubDate>Thu, 20 Sep 2007 19:28:48 GMT</pubDate></item><item><title><![CDATA[Reply to std::string, char * on Thu, 20 Sep 2007 19:45:57 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">CreateThread(NULL, NULL, messageBox, (void *)const_cast&lt;char *&gt;(request.c_str()), NULL, NULL);
</code></pre>
<p>Klappt leider nicht -&gt; Die Messagebox ist leider leer... Bin am Verzweifeln <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1369686</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1369686</guid><dc:creator><![CDATA[Hilfe123]]></dc:creator><pubDate>Thu, 20 Sep 2007 19:45:57 GMT</pubDate></item><item><title><![CDATA[Reply to std::string, char * on Thu, 20 Sep 2007 20:00:18 GMT]]></title><description><![CDATA[<p>Das geht wie gesagt so nicht... der Zeiger ist schon lange ungültig, wenn der Thread läuft...</p>
<p>Mach es so:</p>
<pre><code class="language-cpp">void MyThread(void *data)
{
  char *pMsg = (char*) data;
  MessageBox(NULL, &quot;&quot;, pMsg, MB_OK);
  free(pMsg);
}

void DisplayMsgBosInThread()
{
  std::string s;
  s = &quot;Hello world&quot;;
  _beginthread(MyThread, 0, strdup(s.c_str()));
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1369699</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1369699</guid><dc:creator><![CDATA[Jochen Kalmbach]]></dc:creator><pubDate>Thu, 20 Sep 2007 20:00:18 GMT</pubDate></item><item><title><![CDATA[Reply to std::string, char * on Thu, 20 Sep 2007 20:02:47 GMT]]></title><description><![CDATA[<p>Hilfe123 schrieb:</p>
<blockquote>
<pre><code class="language-cpp">CreateThread(NULL, NULL, messageBox, (void *)const_cast&lt;char *&gt;(request.c_str()), NULL, NULL);
</code></pre>
<p>Klappt leider nicht -&gt; Die Messagebox ist leider leer... Bin am Verzweifeln <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
</blockquote>
<p>wenn 'request' nicht mehr existiert, wenn der thread startet, dann klappt das nicht. mach 'request' static oder global.<br />
<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/1369701</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1369701</guid><dc:creator><![CDATA[Apeman]]></dc:creator><pubDate>Thu, 20 Sep 2007 20:02:47 GMT</pubDate></item><item><title><![CDATA[Reply to std::string, char * on Thu, 20 Sep 2007 20:04:24 GMT]]></title><description><![CDATA[<p>Apeman schrieb:</p>
<blockquote>
<p>mach 'request' static oder global.</p>
</blockquote>
<p>Sehr schlechte Idee...</p>
<p>static oder global geht nur in simplen Programmen...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1369703</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1369703</guid><dc:creator><![CDATA[Jochen Kalmbach]]></dc:creator><pubDate>Thu, 20 Sep 2007 20:04:24 GMT</pubDate></item><item><title><![CDATA[Reply to std::string, char * on Thu, 20 Sep 2007 20:06:48 GMT]]></title><description><![CDATA[<p>Jochen Kalmbach schrieb:</p>
<blockquote>
<p>Apeman schrieb:</p>
<blockquote>
<p>mach 'request' static oder global.</p>
</blockquote>
<p>Sehr schlechte Idee...<br />
static oder global geht nur in simplen Programmen...</p>
</blockquote>
<p>gar nicht. ausserdem kann man's z.b. in eine critical section einpacken etc, damit's kein durcheinander mit dem thread gibt.<br />
<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/1369706</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1369706</guid><dc:creator><![CDATA[Apeman]]></dc:creator><pubDate>Thu, 20 Sep 2007 20:06:48 GMT</pubDate></item><item><title><![CDATA[Reply to std::string, char * on Thu, 20 Sep 2007 20:40:18 GMT]]></title><description><![CDATA[<p>Das is ja mal wieder geil ^^ Ich sach extra er soll nicht const_cast nehmen und was macht er? Erstmal const wegkasten <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /> Und dann nen C-Style-Cast auf void* ... GEIL!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1369722</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1369722</guid><dc:creator><![CDATA[*D*Evil]]></dc:creator><pubDate>Thu, 20 Sep 2007 20:40:18 GMT</pubDate></item><item><title><![CDATA[Reply to std::string, char * on Fri, 21 Sep 2007 12:59:37 GMT]]></title><description><![CDATA[<p>Danke! Es klappt, aber folgende Warnung bereitet mir Sorgen:</p>
<p>warning C4996: 'strdup' wurde als veraltet deklariert<br />
Meldung: &quot;The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _strdup. See online help for details.&quot;</p>
<p>Das heißt? Was soll ich jetzt tun? Vielen Dank im Voraus!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1370138</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1370138</guid><dc:creator><![CDATA[Hilfe123]]></dc:creator><pubDate>Fri, 21 Sep 2007 12:59:37 GMT</pubDate></item><item><title><![CDATA[Reply to std::string, char * on Fri, 21 Sep 2007 13:03:21 GMT]]></title><description><![CDATA[<p>Hilfe123 schrieb:</p>
<blockquote>
<p>&quot;warning C4996: 'strdup' wurde als veraltet deklariert&quot;<br />
Meldung: &quot;The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _strdup. See online help for details.&quot;<br />
Das heißt? Was soll ich jetzt tun?</p>
</blockquote>
<p>Öhm, du darfst dir Warnungen auch gerne durchlesen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /></p>
<p>Du sollst tun: Use the name: '_strdup'<br />
Begründung: 'strdup' wurde als veraltet deklariert</p>
<p>Falls du des englischen nicht mächtig bist, schnell lernen! Und für den Anfang: &quot;to use&quot;-&gt;&quot;benutzen&quot;, &quot;name&quot;-&gt;&quot;Name&quot;</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1370140</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1370140</guid><dc:creator><![CDATA[Badestrand]]></dc:creator><pubDate>Fri, 21 Sep 2007 13:03:21 GMT</pubDate></item></channel></rss>