<?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[int nach char*]]></title><description><![CDATA[<p>Hallo alle zusammen.</p>
<p>Ich versuche eine Variable vom Typ int nach char* umzuwandeln. Ich habe ein paar Lösungen gefunden, würde aber gern eure Meinung hören.</p>
<p>Wie würdet ihr das machen.</p>
<p>Leider kann ich Strings aus std::string nicht benutzen da ich ausschließlich mit char* arbeiten muss. Alle funktionen etc. erwarten ein char*. Ständiges umwandeln von einem Typ in den anderen will ich aber vermeiden.</p>
<p>Hier die erwähnten Lösungen:</p>
<pre><code class="language-cpp">#include &lt;sstream&gt;
#include &lt;string&gt;

int main()
{
int some_int = 3028;
std:stringstream sout;
sout &lt;&lt; some_int;

std::string converted_string(sout.str());
}
</code></pre>
<p>The less recommended way (type safe, copying into a dynamically sized<br />
array):</p>
<pre><code class="language-cpp">#include &lt;sstream&gt;
#include &lt;cstring&gt;

int main()
{
int some_int = 3028;
std:stringstream sout;
sout &lt;&lt; some_int;

char *buff = new char[sout.str().length() + 1];
std::strcpy(buff, sout.str().c_str());
// ... (use buff here)
delete [] buff;
}
</code></pre>
<p>Also ich habe da erst an</p>
<pre><code class="language-cpp">char *cp = reinterpret_cast&lt;char *&gt;(some_int);
</code></pre>
<p>gedacht. Jedoch ist dies nicht gerade die sicherste Methode. (kann mir einererklären wieso?? )</p>
<p>Wie würdet ihr ein int nach char* umwandeln??</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/157546/int-nach-char</link><generator>RSS for Node</generator><lastBuildDate>Wed, 09 Sep 2026 07:34:03 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/157546.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 27 Aug 2006 11:52:18 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to int nach char* on Sun, 27 Aug 2006 11:52:18 GMT]]></title><description><![CDATA[<p>Hallo alle zusammen.</p>
<p>Ich versuche eine Variable vom Typ int nach char* umzuwandeln. Ich habe ein paar Lösungen gefunden, würde aber gern eure Meinung hören.</p>
<p>Wie würdet ihr das machen.</p>
<p>Leider kann ich Strings aus std::string nicht benutzen da ich ausschließlich mit char* arbeiten muss. Alle funktionen etc. erwarten ein char*. Ständiges umwandeln von einem Typ in den anderen will ich aber vermeiden.</p>
<p>Hier die erwähnten Lösungen:</p>
<pre><code class="language-cpp">#include &lt;sstream&gt;
#include &lt;string&gt;

int main()
{
int some_int = 3028;
std:stringstream sout;
sout &lt;&lt; some_int;

std::string converted_string(sout.str());
}
</code></pre>
<p>The less recommended way (type safe, copying into a dynamically sized<br />
array):</p>
<pre><code class="language-cpp">#include &lt;sstream&gt;
#include &lt;cstring&gt;

int main()
{
int some_int = 3028;
std:stringstream sout;
sout &lt;&lt; some_int;

char *buff = new char[sout.str().length() + 1];
std::strcpy(buff, sout.str().c_str());
// ... (use buff here)
delete [] buff;
}
</code></pre>
<p>Also ich habe da erst an</p>
<pre><code class="language-cpp">char *cp = reinterpret_cast&lt;char *&gt;(some_int);
</code></pre>
<p>gedacht. Jedoch ist dies nicht gerade die sicherste Methode. (kann mir einererklären wieso?? )</p>
<p>Wie würdet ihr ein int nach char* umwandeln??</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1125297</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1125297</guid><dc:creator><![CDATA[Croatiancow]]></dc:creator><pubDate>Sun, 27 Aug 2006 11:52:18 GMT</pubDate></item><item><title><![CDATA[Reply to int nach char* on Sun, 27 Aug 2006 11:59:03 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>in der <a href="http://www.c-plusplus.net/forum/viewtopic-var-t-is-39488.html" rel="nofollow">FAQ</a> wird das ausführlich beschrieben.</p>
<p>EDIT: Verflixte Rechtschreibung...</p>
<p>MfG</p>
<p>GPC</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1125303</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1125303</guid><dc:creator><![CDATA[GPC]]></dc:creator><pubDate>Sun, 27 Aug 2006 11:59:03 GMT</pubDate></item><item><title><![CDATA[Reply to int nach char* on Sun, 27 Aug 2006 12:02:00 GMT]]></title><description><![CDATA[<p>sprintf_s hilft dir.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1125307</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1125307</guid><dc:creator><![CDATA[&#x27;&#x27;&#x27;]]></dc:creator><pubDate>Sun, 27 Aug 2006 12:02:00 GMT</pubDate></item><item><title><![CDATA[Reply to int nach char* on Sun, 27 Aug 2006 14:33:54 GMT]]></title><description><![CDATA[<p>Wenn du nicht auf eine C funktion zurueckgreifen willst aber<br />
auch keine sstreams brauchen wills (sind nicht gerade schnell),<br />
dann kannst du auf boost zurueckgreifen.</p>
<p>Nachteil an boost ist, dass es nicht auf jedem system ist.<br />
Zumal musst du die Lizenz beachten.</p>
<p>Gg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1125423</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1125423</guid><dc:creator><![CDATA[xGhost]]></dc:creator><pubDate>Sun, 27 Aug 2006 14:33:54 GMT</pubDate></item><item><title><![CDATA[Reply to int nach char* on Sun, 27 Aug 2006 15:21:11 GMT]]></title><description><![CDATA[<p>Du kannst trotzdem std::string verwenden, da std::string garantiert, dass man ganz normal mit einem char* darauf arbeiten kann.<br />
Ob du folgendes schreibst</p>
<pre><code class="language-cpp">void func(char* p);

int main()
{
  char* buf = new char[ 256 ];
  func( buf );
  delete[] buf;
};
</code></pre>
<p>oder</p>
<pre><code class="language-cpp">void func(char* p);

int main()
{
   std::string buf( 256, '\0' );
   func( &amp;buf[ 0 ] );
}
</code></pre>
<p>ist egal, abgesehen davon, dass letzteres exception sicher ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1125452</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1125452</guid><dc:creator><![CDATA[lolz]]></dc:creator><pubDate>Sun, 27 Aug 2006 15:21:11 GMT</pubDate></item><item><title><![CDATA[Reply to int nach char* on Sun, 27 Aug 2006 15:30:42 GMT]]></title><description><![CDATA[<blockquote>
<p>Du kannst trotzdem std::string verwenden, da std::string garantiert, dass man ganz normal mit einem char* darauf arbeiten kann.</p>
</blockquote>
<p>Falsch!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1125459</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1125459</guid><dc:creator><![CDATA[roflz]]></dc:creator><pubDate>Sun, 27 Aug 2006 15:30:42 GMT</pubDate></item><item><title><![CDATA[Reply to int nach char* on Sun, 27 Aug 2006 16:37:58 GMT]]></title><description><![CDATA[<p>xGhost schrieb:</p>
<blockquote>
<p>Wenn du nicht auf eine C funktion zurueckgreifen willst aber<br />
auch keine sstreams brauchen wills (sind nicht gerade schnell),<br />
dann kannst du auf boost zurueckgreifen.</p>
<p>Nachteil an boost ist, dass es nicht auf jedem system ist.<br />
Zumal musst du die Lizenz beachten.</p>
<p>Gg</p>
</blockquote>
<p>Falls du da an lexical_cast denkst, der wird imho intern auch mit Stringstreams implementiert.</p>
<p>MfG SideWinder</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1125536</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1125536</guid><dc:creator><![CDATA[SideWinder]]></dc:creator><pubDate>Sun, 27 Aug 2006 16:37:58 GMT</pubDate></item><item><title><![CDATA[Reply to int nach char* on Sun, 27 Aug 2006 21:30:41 GMT]]></title><description><![CDATA[<p>Danke für eure Antworten.</p>
<p>Ich habe es per sprintf gemacht. Ein Pufferüberlauf kann &quot;nicht&quot; zustandekommen da ich selbst nicht damit arbeite, oder etwas zuweise. Ich erstelle nur ein unsigned int (wo die maximale Länge bekannt ist) und wandle es in ein char* um.</p>
<p>Fertig.<br />
Ausserdem ist alles in einem Try-Catch Block.</p>
<p>Irgendwie hab ich was falsches in der Suche eingegeben.</p>
<p>Mir war eure Meinung wichtig <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="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1125769</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1125769</guid><dc:creator><![CDATA[Croatiancow]]></dc:creator><pubDate>Sun, 27 Aug 2006 21:30:41 GMT</pubDate></item><item><title><![CDATA[Reply to int nach char* on Sun, 27 Aug 2006 21:43:11 GMT]]></title><description><![CDATA[<p>Croatiancow schrieb:</p>
<blockquote>
<p>Ich habe es per sprintf gemacht.<br />
Ausserdem ist alles in einem Try-Catch Block.</p>
</blockquote>
<p>Try-Catch haben nur mit C++ kontainer funktionen verwendung<br />
und nicht mit C funktionen. Somit ist das meiner<br />
meinung nach sinnlos. Ich lasse mich aber gerne<br />
eines besseren...</p>
<p>Gg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1125780</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1125780</guid><dc:creator><![CDATA[xGhost]]></dc:creator><pubDate>Sun, 27 Aug 2006 21:43:11 GMT</pubDate></item><item><title><![CDATA[Reply to int nach char* on Mon, 28 Aug 2006 08:22:47 GMT]]></title><description><![CDATA[<p>Ist sprintf() keine C++ Funktion?</p>
<p>Ich arbeite nicht mit C. Habe aber recht viele Probleme mit Strings. Daher nehm ich die char*.<br />
Damit hat alles funktioniert (mit Überprüfung). Ansonsten muss ich sehr viel casten / umwandeln.</p>
<p>Bahala Na</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1125906</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1125906</guid><dc:creator><![CDATA[Croatiancow]]></dc:creator><pubDate>Mon, 28 Aug 2006 08:22:47 GMT</pubDate></item><item><title><![CDATA[Reply to int nach char* on Mon, 28 Aug 2006 08:56:22 GMT]]></title><description><![CDATA[<p>Nö, sprintf ist eine ANSI-C Funktion. Sie steht auch im C++ Standard zur Verfügung, ist aber eher verpönt.</p>
<p>Davon abgesehen dass sprintf keine Exceptions wirft, helfen Dir Exceptions nur wenn die Funktion überhaupt Exceptions werfen <strong>kann</strong>. Da sprintf einen Zeiger übergeben bekommt, dessen Länge es nicht kennt, wirst Du auch bei übelsten Bereichsüberschreitungen niemals in Deinem catch-Block landen. Das gleiche gilt für die Übereinstimmung der Formatmaske mit den übergebenen Argumenten. Es <strong>kann</strong> garnicht feststellen, ob Du genug Argumente übergibst, und ob die den richtigen Typ haben. Demnach erhälst Du auch hier keine Exceptions.</p>
<p>(Deshalb ist es auch verpönt)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1125939</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1125939</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Mon, 28 Aug 2006 08:56:22 GMT</pubDate></item><item><title><![CDATA[Reply to int nach char* on Mon, 28 Aug 2006 08:57:52 GMT]]></title><description><![CDATA[<p>roflz schrieb:</p>
<blockquote>
<blockquote>
<p>Du kannst trotzdem std::string verwenden, da std::string garantiert, dass man ganz normal mit einem char* darauf arbeiten kann.</p>
</blockquote>
<p>Falsch!</p>
</blockquote>
<p>stfu n4p</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1125940</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1125940</guid><dc:creator><![CDATA[lolz]]></dc:creator><pubDate>Mon, 28 Aug 2006 08:57:52 GMT</pubDate></item><item><title><![CDATA[Reply to int nach char* on Mon, 28 Aug 2006 09:00:52 GMT]]></title><description><![CDATA[<p>OK. <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="😃"
    /></p>
<p>Ich hab jetzt den TryCatch Block gelöscht <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>Eine Überprüfung habe ich trotzdem eingebaut. Per if-else.<br />
Danke für eure Hilfe.</p>
<p>Grüßle</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1125943</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1125943</guid><dc:creator><![CDATA[Croatiancow]]></dc:creator><pubDate>Mon, 28 Aug 2006 09:00:52 GMT</pubDate></item></channel></rss>