<?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[Programm stürzt ab. Wieso?]]></title><description><![CDATA[<p>Hallo Forum,</p>
<p>ich bin dabei meine Anwendung zu Debuggen. Da wären Zeilen wie diese hilfreich. Jetzt habe ich aber schon in den Debugging Zeilen Abstürze... um sie besser zu analysieren habe ich ein normales HelloWorldKonsolenProjekt mit dem VS6 erstellt:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;windows.h&gt;
int main(int argc, char* argv[]) {
	wchar_t *wReport;

	wReport = new wchar_t(300 * sizeof(wchar_t));
	wcscpy(wReport, L&quot;aaaaa aaaaa aaaaa aaaaa\0\0&quot;);
	MessageBoxW(0, wReport, L&quot;&quot;, 0);
	//free(wReport);
	wReport = new wchar_t(300 * sizeof(wchar_t));

	// Hier kommt der Absturz: Unhandeld exception... Access Violation.
	wcscpy(wReport, L&quot;aaaaa aaaaa aaaaa aaaaa\0\0&quot;);

	return 0;
}
</code></pre>
<p>Wieso stürzt diese Programm ab? Wenn ich das &quot;vergessene&quot; free() vor der zweiten Allokierung setze, will er mir sogar verkaufen das dort ein Breakpoint sei!? Mache ich grundsätzlich etwas falsch?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/181262/programm-stürzt-ab-wieso</link><generator>RSS for Node</generator><lastBuildDate>Tue, 22 Sep 2026 05:37:30 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/181262.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 11 May 2007 15:21:16 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Programm stürzt ab. Wieso? on Fri, 11 May 2007 15:21:16 GMT]]></title><description><![CDATA[<p>Hallo Forum,</p>
<p>ich bin dabei meine Anwendung zu Debuggen. Da wären Zeilen wie diese hilfreich. Jetzt habe ich aber schon in den Debugging Zeilen Abstürze... um sie besser zu analysieren habe ich ein normales HelloWorldKonsolenProjekt mit dem VS6 erstellt:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;windows.h&gt;
int main(int argc, char* argv[]) {
	wchar_t *wReport;

	wReport = new wchar_t(300 * sizeof(wchar_t));
	wcscpy(wReport, L&quot;aaaaa aaaaa aaaaa aaaaa\0\0&quot;);
	MessageBoxW(0, wReport, L&quot;&quot;, 0);
	//free(wReport);
	wReport = new wchar_t(300 * sizeof(wchar_t));

	// Hier kommt der Absturz: Unhandeld exception... Access Violation.
	wcscpy(wReport, L&quot;aaaaa aaaaa aaaaa aaaaa\0\0&quot;);

	return 0;
}
</code></pre>
<p>Wieso stürzt diese Programm ab? Wenn ich das &quot;vergessene&quot; free() vor der zweiten Allokierung setze, will er mir sogar verkaufen das dort ein Breakpoint sei!? Mache ich grundsätzlich etwas falsch?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1283085</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1283085</guid><dc:creator><![CDATA[Neuling_1]]></dc:creator><pubDate>Fri, 11 May 2007 15:21:16 GMT</pubDate></item><item><title><![CDATA[Reply to Programm stürzt ab. Wieso? on Fri, 11 May 2007 15:23:25 GMT]]></title><description><![CDATA[<p>new wchar_t[...] nicht new wchar_t(...)</p>
<p>free hat hier nichts zu suchen, dafür aber passende delete [].</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1283088</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1283088</guid><dc:creator><![CDATA[Helium]]></dc:creator><pubDate>Fri, 11 May 2007 15:23:25 GMT</pubDate></item><item><title><![CDATA[Reply to Programm stürzt ab. Wieso? on Fri, 11 May 2007 15:24:04 GMT]]></title><description><![CDATA[<p>zwei stringendezeichen(\0)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1283089</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1283089</guid><dc:creator><![CDATA[Raxtor]]></dc:creator><pubDate>Fri, 11 May 2007 15:24:04 GMT</pubDate></item><item><title><![CDATA[Reply to Programm stürzt ab. Wieso? on Fri, 11 May 2007 15:33:13 GMT]]></title><description><![CDATA[<p>@Digger182: Das zweite Stringende hatte ich nur aus Verzweiflung drin*g*</p>
<p>Jetzt kann ich endlich mit dem weiter machen was ich eigentlich debuggen wollte. Vielen vielen Dank Helium <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/1283097</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1283097</guid><dc:creator><![CDATA[Neuling_1]]></dc:creator><pubDate>Fri, 11 May 2007 15:33:13 GMT</pubDate></item><item><title><![CDATA[Reply to Programm stürzt ab. Wieso? on Fri, 11 May 2007 15:51:35 GMT]]></title><description><![CDATA[<p>Neuling_1 schrieb:</p>
<blockquote>
<p>@Digger182: Das zweite Stringende hatte ich nur aus Verzweiflung drin*g*</p>
</blockquote>
<p>Typischer Fall von &quot;Lass die Finger von Zeigern und verwende die String-Klasse&quot;:</p>
<pre><code class="language-cpp">std::wstring text = L&quot;aaaa aaaa aaa&quot;; // ...
::MessageBoxW(0, text.c_str(), L&quot;&quot;, 0);
</code></pre>
<p>@Digger: Nicht *zwei* Stringenden sondern *drei*!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1283110</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1283110</guid><dc:creator><![CDATA[Konrad Rudolph]]></dc:creator><pubDate>Fri, 11 May 2007 15:51:35 GMT</pubDate></item><item><title><![CDATA[Reply to Programm stürzt ab. Wieso? on Fri, 11 May 2007 16:54:00 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;windows.h&gt;

int main() 
{
    wchar_t *wReport = new wchar_t[300];
    wcscpy(wReport, L&quot;aaaaa aaaaa aaaaa aaaaa&quot;);
    MessageBoxW(NULL, wReport, NULL, MB_OK | MB_ICONINFORMATION);
    delete [] wReport;
    wReport = new wchar_t[300];
    wcscpy(wReport, L&quot;aaaaa aaaaa aaaaa aaaaa&quot;);
    delete [] wReport;
}
</code></pre>
<p>... kann sein das ich was übersehen habe .. sry...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1283141</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1283141</guid><dc:creator><![CDATA[*D*Evil]]></dc:creator><pubDate>Fri, 11 May 2007 16:54:00 GMT</pubDate></item><item><title><![CDATA[Reply to Programm stürzt ab. Wieso? on Fri, 11 May 2007 17:00:42 GMT]]></title><description><![CDATA[<p>Konrad Rudolph schrieb:</p>
<blockquote>
<p>Neuling_1 schrieb:</p>
<blockquote>
<p>@Digger182: Das zweite Stringende hatte ich nur aus Verzweiflung drin*g*</p>
</blockquote>
<p>Typischer Fall von &quot;Lass die Finger von Zeigern und verwende die String-Klasse&quot;:</p>
<pre><code class="language-cpp">std::wstring text = L&quot;aaaa aaaa aaa&quot;; // ...
::MessageBoxW(0, text.c_str(), L&quot;&quot;, 0);
</code></pre>
<p>@Digger: Nicht *zwei* Stringenden sondern *drei*!</p>
</blockquote>
<p>stimmt...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1283146</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1283146</guid><dc:creator><![CDATA[Raxtor]]></dc:creator><pubDate>Fri, 11 May 2007 17:00:42 GMT</pubDate></item><item><title><![CDATA[Reply to Programm stürzt ab. Wieso? on Fri, 11 May 2007 18:34:29 GMT]]></title><description><![CDATA[<p>Das find ich wieder nicht vertretbar. Wenn er noch nichtmal mit Grunddatentypen klar kommt... wie soll er den aufbau einer std::wstring-Klasse verstehen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1283186</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1283186</guid><dc:creator><![CDATA[*D*Evil]]></dc:creator><pubDate>Fri, 11 May 2007 18:34:29 GMT</pubDate></item><item><title><![CDATA[Reply to Programm stürzt ab. Wieso? on Sat, 12 May 2007 09:40:55 GMT]]></title><description><![CDATA[<p>(D)Evil schrieb:</p>
<blockquote>
<p>Das find ich wieder nicht vertretbar. Wenn er noch nichtmal mit Grunddatentypen klar kommt... wie soll er den aufbau einer std::wstring-Klasse verstehen?</p>
</blockquote>
<p>*Wieso* soll er den Aufbau denn verstehen? Welcher VB6-Anfänger versteht schon den Aufbau der BSTR-, VARIANT- oder SAFEARRAY-Struct? Trotzdem verwendet er Strings, Variants und Arrays.</p>
<p>=&gt; Man muss, um eine Klasse benutzen zu können, ihren Aufbau nicht verstehen. Das ist ja gerade einer der Vorteile der Kapselung.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1283333</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1283333</guid><dc:creator><![CDATA[Konrad Rudolph]]></dc:creator><pubDate>Sat, 12 May 2007 09:40:55 GMT</pubDate></item></channel></rss>