<?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[Problem mit Char]]></title><description><![CDATA[<p>Hi Leute,</p>
<pre><code class="language-cpp">char* Copy(char input[], int start, int count)
{
      char *result = new char[count-1];
      for(int i = 0; i &lt; count; i++)
      {
            result[i] = input[start+i];
      }
      result[sizeof(result)] = 0;
      return result;
}
</code></pre>
<p>Das ist eine selbstgeschrieben Funktion um aus einem Char-Array eine bestimmte Anzahl an Zeichen auszulesen. (Das gleiche wie die Pascal-Copy-Funktion.)</p>
<p>Nun habe ich einen Char-Array, der z.B. &quot;:[google]!dfjsdkfjl&quot; enthält und ich möchte mittels dieser Copy-Funktion das 2 (da Array = 1) Zeichen bis zu dem &quot;!&quot; extrahieren (! Position = 9), dann müsste ich theoretisch ausgabe = Copy(arrayname, 1, 9); aufrufen, um das Ergebnis (&quot;[google]&quot;) zu bekommen. (mit char *ausgabe = new char[9];)</p>
<p>Aber ich erhalte immer nur die ersten 3 Zeichen...</p>
<p>Irgendwas stimmt nicht, vielleicht könnt ihr mir helfen. <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>
<p>MfG, Refox</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/157424/problem-mit-char</link><generator>RSS for Node</generator><lastBuildDate>Wed, 15 Apr 2026 00:39:49 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/157424.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 25 Aug 2006 15:05:57 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Problem mit Char on Fri, 25 Aug 2006 15:05:57 GMT]]></title><description><![CDATA[<p>Hi Leute,</p>
<pre><code class="language-cpp">char* Copy(char input[], int start, int count)
{
      char *result = new char[count-1];
      for(int i = 0; i &lt; count; i++)
      {
            result[i] = input[start+i];
      }
      result[sizeof(result)] = 0;
      return result;
}
</code></pre>
<p>Das ist eine selbstgeschrieben Funktion um aus einem Char-Array eine bestimmte Anzahl an Zeichen auszulesen. (Das gleiche wie die Pascal-Copy-Funktion.)</p>
<p>Nun habe ich einen Char-Array, der z.B. &quot;:[google]!dfjsdkfjl&quot; enthält und ich möchte mittels dieser Copy-Funktion das 2 (da Array = 1) Zeichen bis zu dem &quot;!&quot; extrahieren (! Position = 9), dann müsste ich theoretisch ausgabe = Copy(arrayname, 1, 9); aufrufen, um das Ergebnis (&quot;[google]&quot;) zu bekommen. (mit char *ausgabe = new char[9];)</p>
<p>Aber ich erhalte immer nur die ersten 3 Zeichen...</p>
<p>Irgendwas stimmt nicht, vielleicht könnt ihr mir helfen. <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>
<p>MfG, Refox</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1124527</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1124527</guid><dc:creator><![CDATA[Refox]]></dc:creator><pubDate>Fri, 25 Aug 2006 15:05:57 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Char on Fri, 25 Aug 2006 15:13:36 GMT]]></title><description><![CDATA[<p>Das sagt mir, dass du keinen 64bit Compiler hast <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="😉"
    /><br />
Mit sizeof kann man nicht die Größe von Arrays die sich hinter Pointern verstecken ermitteln, erst recht nicht, da sizeof zur Compilezeit abgehandelt wird.</p>
<p>Achja warum verwendest du nicht std::string?</p>
<pre><code class="language-cpp">std::string a = &quot;:[google]!dfjsdkfjl&quot;;
std::string b = a.substr(1, 9);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1124533</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1124533</guid><dc:creator><![CDATA[Thomas ** 0]]></dc:creator><pubDate>Fri, 25 Aug 2006 15:13:36 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Char on Fri, 25 Aug 2006 15:12:03 GMT]]></title><description><![CDATA[<p>Ich hab jetzt gemerkt, dass es wohl daran liegt, dass ich mit result[sizeof(result)] = 0; das letzte Zeichen entferne. Entferne ich das jedoch nicht, so gibt es ein komisches Zeichen an das Ende von der Variable result...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1124534</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1124534</guid><dc:creator><![CDATA[Refox]]></dc:creator><pubDate>Fri, 25 Aug 2006 15:12:03 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Char on Fri, 25 Aug 2006 15:28:44 GMT]]></title><description><![CDATA[<p>Wie Thomas schon geschrieben hat, liefert sizeof() nur zur Compilezeit etwas</p>
<p>Richtig wäre:</p>
<pre><code>result[count] = '\0';
</code></pre>
<p>Außerdem reservierst du <strong>2 Zeichen</strong> zu wenig!<br />
Also statt</p>
<pre><code>char *result = new char[count-1];
</code></pre>
<p>muß es heißen</p>
<pre><code>char *result = new char[count+1];
</code></pre>
<p>um das Stringende '\0' mit aufnehmen zu können.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1124544</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1124544</guid><dc:creator><![CDATA[Javaner]]></dc:creator><pubDate>Fri, 25 Aug 2006 15:28:44 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Char on Fri, 25 Aug 2006 15:29:14 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/9591">@Thomas</a>: Vielen Dank schon mal für die schnelle Antwort.<br />
Aber irgendwie kann ich einen String nicht in der Console (mittels cout) anzeigen lassen, da meldet mein Compiler, dass der Operator &lt;&lt; strings nicht zugewiesen ist...</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/12170">@Javaner</a>: Einwandfrei, funzt perfekt. <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="😉"
    /> Danke!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1124545</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1124545</guid><dc:creator><![CDATA[Refox]]></dc:creator><pubDate>Fri, 25 Aug 2006 15:29:14 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Char on Fri, 25 Aug 2006 15:30:19 GMT]]></title><description><![CDATA[<p>Gewöhn dir doch mal an, zumindest die <strong>entsprechende</strong> Code-Zeile zu posten <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/1124548</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1124548</guid><dc:creator><![CDATA[Javaner]]></dc:creator><pubDate>Fri, 25 Aug 2006 15:30:19 GMT</pubDate></item></channel></rss>