<?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[Riesen Problem mit char-Pointer. Bitte um Hilfe]]></title><description><![CDATA[<p>Hallo an alle,<br />
ich stehe seit eingen Stunden vor folgenden Problem:<br />
Ich habe in einer Klasse einen public char-Pointer.</p>
<pre><code class="language-cpp">class CMessdaten
{
public:
char* speicher;
void ReadLines();
};
</code></pre>
<p>In der gleichen Klasse befindet sich die public Methode ReadLines().<br />
In dieser Methode lese ich aus einer Datei sämtliche Zeilen aus die da drin stehen (meist so um die 300). Bei jedem auslesen hole ich mir wieder neuen Speicher mit new.<br />
Jedoch bekomme ich beim Auslesen ständig eine Fehlermeldung:<br />
Debug Assertion Failed!<br />
...<br />
Expression: (string != NULL) || (count == 0)</p>
<p>Wenn ich nun aber &quot;char* speicher&quot; aus der Klasse lösche und lokal in der Methode ReadLines() deklariere, klappt alles ohne Fehler. Ich kann mir auch den Inhalt (also alle ausgelesen Zeilen), welche auf dem Pointer abgelegt sind, anzeigen lassen. Nur halt wenn ich den Pointer wieder in der Klasse deklariere, bekomme ich wieder den Fehler.<br />
Kann mir jemand weiterhelfen? Ich weis absolut nicht mehr weiter...habe schon alles ausprobiert...aber es kommt immerwieder der gleiche fehler...<br />
Würde mich sehr freuen wenn jemand helfen kann!<br />
Vielen Dank!!</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/239994/riesen-problem-mit-char-pointer-bitte-um-hilfe</link><generator>RSS for Node</generator><lastBuildDate>Tue, 22 Sep 2026 06:25:45 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/239994.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 30 Apr 2009 11:23:36 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Riesen Problem mit char-Pointer. Bitte um Hilfe on Thu, 30 Apr 2009 11:23:36 GMT]]></title><description><![CDATA[<p>Hallo an alle,<br />
ich stehe seit eingen Stunden vor folgenden Problem:<br />
Ich habe in einer Klasse einen public char-Pointer.</p>
<pre><code class="language-cpp">class CMessdaten
{
public:
char* speicher;
void ReadLines();
};
</code></pre>
<p>In der gleichen Klasse befindet sich die public Methode ReadLines().<br />
In dieser Methode lese ich aus einer Datei sämtliche Zeilen aus die da drin stehen (meist so um die 300). Bei jedem auslesen hole ich mir wieder neuen Speicher mit new.<br />
Jedoch bekomme ich beim Auslesen ständig eine Fehlermeldung:<br />
Debug Assertion Failed!<br />
...<br />
Expression: (string != NULL) || (count == 0)</p>
<p>Wenn ich nun aber &quot;char* speicher&quot; aus der Klasse lösche und lokal in der Methode ReadLines() deklariere, klappt alles ohne Fehler. Ich kann mir auch den Inhalt (also alle ausgelesen Zeilen), welche auf dem Pointer abgelegt sind, anzeigen lassen. Nur halt wenn ich den Pointer wieder in der Klasse deklariere, bekomme ich wieder den Fehler.<br />
Kann mir jemand weiterhelfen? Ich weis absolut nicht mehr weiter...habe schon alles ausprobiert...aber es kommt immerwieder der gleiche fehler...<br />
Würde mich sehr freuen wenn jemand helfen kann!<br />
Vielen Dank!!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1703573</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1703573</guid><dc:creator><![CDATA[dArIcO85]]></dc:creator><pubDate>Thu, 30 Apr 2009 11:23:36 GMT</pubDate></item><item><title><![CDATA[Reply to Riesen Problem mit char-Pointer. Bitte um Hilfe on Thu, 30 Apr 2009 11:35:17 GMT]]></title><description><![CDATA[<p>Erstmal mehr code zeigen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1703576</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1703576</guid><dc:creator><![CDATA[Witterung]]></dc:creator><pubDate>Thu, 30 Apr 2009 11:35:17 GMT</pubDate></item><item><title><![CDATA[Reply to Riesen Problem mit char-Pointer. Bitte um Hilfe on Thu, 30 Apr 2009 11:42:03 GMT]]></title><description><![CDATA[<p>Das ist der source der ReadMessdaten() Methode, char* speicher ist dabei in der Klasse (wie oben gezeigt):<br />
Lasst euch nicht an dem &quot;bool ok&quot; stören <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>
<pre><code class="language-cpp">void CDlgChangeOneProtokoll::ReadMessdaten()
{
  char  temp[255];

char* buffer;

  int   len;  
  bool ok = false;

  while(!feof(protokoll))
  {
    fgets(temp,sizeof(temp),protokoll);

    len = strlen(temp);

    if (ok)
    {
    buffer = new char[strlen(speicher) + len];
    strcpy(buffer,speicher);
    strcat(buffer,temp);
    }

    if (!ok)
    {
      buffer = new char[len];
      ok = true;
      strcpy(buffer,temp);
    }

    strcat(buffer,&quot;\0\n&quot;);

    speicher = new char[strlen(buffer)];
    strcpy(speicher,buffer);
  }

}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1703584</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1703584</guid><dc:creator><![CDATA[dArIcO85]]></dc:creator><pubDate>Thu, 30 Apr 2009 11:42:03 GMT</pubDate></item><item><title><![CDATA[Reply to Riesen Problem mit char-Pointer. Bitte um Hilfe on Thu, 30 Apr 2009 11:50:14 GMT]]></title><description><![CDATA[<p>dArIcO85 schrieb:</p>
<blockquote>
<pre><code class="language-cpp">buffer = new char[strlen(speicher) + len];
    strcpy(buffer,speicher);
    strcat(buffer,temp);
</code></pre>
</blockquote>
<p>hat es einen besonderen grund, warum du dich mit den c-routinen abplagst, statt std::string zu benutzen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1703590</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1703590</guid><dc:creator><![CDATA[c++ ftw]]></dc:creator><pubDate>Thu, 30 Apr 2009 11:50:14 GMT</pubDate></item><item><title><![CDATA[Reply to Riesen Problem mit char-Pointer. Bitte um Hilfe on Thu, 30 Apr 2009 11:53:12 GMT]]></title><description><![CDATA[<blockquote>
<p>hat es einen besonderen grund, warum du dich mit den c-routinen abplagst, statt std::string zu benutzen?</p>
</blockquote>
<p>ja ist richtig, aber ich habe jetzt die methode schon 20 mal umgeschrieben, jetzt bin ich bei dieser variante hängen geblieben...</p>
<p>aber es stürzt auch hier nur ab wenn der pointer speicher in der klasse steht...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1703592</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1703592</guid><dc:creator><![CDATA[dArIcO85]]></dc:creator><pubDate>Thu, 30 Apr 2009 11:53:12 GMT</pubDate></item><item><title><![CDATA[Reply to Riesen Problem mit char-Pointer. Bitte um Hilfe on Thu, 30 Apr 2009 12:02:51 GMT]]></title><description><![CDATA[<p>dArIcO85 schrieb:</p>
<blockquote>
<blockquote>
<p>hat es einen besonderen grund, warum du dich mit den c-routinen abplagst, statt std::string zu benutzen?</p>
</blockquote>
<p>ja ist richtig, aber ich habe jetzt die methode schon 20 mal umgeschrieben, jetzt bin ich bei dieser variante hängen geblieben...</p>
<p>aber es stürzt auch hier nur ab wenn der pointer speicher in der klasse steht...</p>
</blockquote>
<p>dann versuchs noch ma mit std::string...<br />
so is ja grauenhaft<br />
btw: ma die memory-leaks gezählt? : D</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1703599</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1703599</guid><dc:creator><![CDATA[unskilled]]></dc:creator><pubDate>Thu, 30 Apr 2009 12:02:51 GMT</pubDate></item><item><title><![CDATA[Reply to Riesen Problem mit char-Pointer. Bitte um Hilfe on Thu, 30 Apr 2009 12:18:52 GMT]]></title><description><![CDATA[<p>kanns ja gerne noma versuchen, aber habe das ja auch schon alles durch <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>btw: ma die memory-leaks gezählt? : D</p>
</blockquote>
<p>lol....viel zu viele</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1703607</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1703607</guid><dc:creator><![CDATA[dArIcO85]]></dc:creator><pubDate>Thu, 30 Apr 2009 12:18:52 GMT</pubDate></item><item><title><![CDATA[Reply to Riesen Problem mit char-Pointer. Bitte um Hilfe on Thu, 30 Apr 2009 12:22:02 GMT]]></title><description><![CDATA[<p>....und dann noch <a href="http://www.cppreference.com/wiki/string/getline" rel="nofollow">http://www.cppreference.com/wiki/string/getline</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1703609</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1703609</guid><dc:creator><![CDATA[jencas]]></dc:creator><pubDate>Thu, 30 Apr 2009 12:22:02 GMT</pubDate></item><item><title><![CDATA[Reply to Riesen Problem mit char-Pointer. Bitte um Hilfe on Thu, 30 Apr 2009 12:22:48 GMT]]></title><description><![CDATA[<p>das ist ja grausam.</p>
<p>dArIcO85 schrieb:</p>
<blockquote>
<p>ja ist richtig, aber ich habe jetzt die methode schon 20 mal umgeschrieben</p>
</blockquote>
<p>Dann investiere ein wenig Zeit, und statt die Methode noch weitere 20 mal im Blindflug umzuschreiben (das was du da hast sieht nämlich nach rumprobieren und nicht nach wissen aus) informierst du dich über std::string, std::fstream, die nötigen getline-funktionen und schreibst das Ganze dann in ein bis zwei Versuchen richtig. Trial and Error ist der falsche Weg.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1703610</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1703610</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Thu, 30 Apr 2009 12:22:48 GMT</pubDate></item></channel></rss>