<?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[fehlermeldung]]></title><description><![CDATA[<p>also ich lösche einen bestimmten bereich aus meinem string folgendermaßen:<br />
als erstes gibt man eine aufgabe ein bsp: 555+666<br />
so nun bekomme ich die länge der beiden zahlen mit:</p>
<pre><code class="language-cpp">double prev = fPrev_length(i,sTask);
double next = fNext_length(i,sTask);
</code></pre>
<p>nun möchte ich genau den bereich zwischen dem anfang der 1. zahl und dem ende der 2. zahl löschen:</p>
<pre><code class="language-cpp">double start = i - prev;
double finish = i + next;

cout &lt;&lt; sTask &lt;&lt; endl; // gibt aus 555+666
sTask.erase(start,finish);
cout &lt;&lt; sTask; /// gibt ix aus und fehler kommt :/
</code></pre>
<p>wie kann ich denn anders einen bereich aus einem string löschen?<br />
oder eher warum kommt da ein fehler:<br />
**<br />
Debug Assertion Failed!</p>
<p>Program: ...<br />
File: ./xstring<br />
Line: 1508</p>
<p>Expression: string subscript out of range<br />
**</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/170575/fehlermeldung</link><generator>RSS for Node</generator><lastBuildDate>Thu, 17 Sep 2026 03:33:12 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/170575.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 17 Jan 2007 15:20:45 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to fehlermeldung on Wed, 17 Jan 2007 15:20:45 GMT]]></title><description><![CDATA[<p>also ich lösche einen bestimmten bereich aus meinem string folgendermaßen:<br />
als erstes gibt man eine aufgabe ein bsp: 555+666<br />
so nun bekomme ich die länge der beiden zahlen mit:</p>
<pre><code class="language-cpp">double prev = fPrev_length(i,sTask);
double next = fNext_length(i,sTask);
</code></pre>
<p>nun möchte ich genau den bereich zwischen dem anfang der 1. zahl und dem ende der 2. zahl löschen:</p>
<pre><code class="language-cpp">double start = i - prev;
double finish = i + next;

cout &lt;&lt; sTask &lt;&lt; endl; // gibt aus 555+666
sTask.erase(start,finish);
cout &lt;&lt; sTask; /// gibt ix aus und fehler kommt :/
</code></pre>
<p>wie kann ich denn anders einen bereich aus einem string löschen?<br />
oder eher warum kommt da ein fehler:<br />
**<br />
Debug Assertion Failed!</p>
<p>Program: ...<br />
File: ./xstring<br />
Line: 1508</p>
<p>Expression: string subscript out of range<br />
**</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1211447</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1211447</guid><dc:creator><![CDATA[Dj_KoLoGe]]></dc:creator><pubDate>Wed, 17 Jan 2007 15:20:45 GMT</pubDate></item><item><title><![CDATA[Reply to fehlermeldung on Wed, 17 Jan 2007 15:32:39 GMT]]></title><description><![CDATA[<p>Hallo,<br />
warum wirfst du nicht einfach mal ein Blick in deine Standardlib-Doku? std::string::erase erwartet als ersten Parameter einen offset und als zweiten eine Länge.<br />
Dein</p>
<pre><code class="language-cpp">sTask.erase(start,finish);
</code></pre>
<p>sollte also eher:</p>
<pre><code class="language-cpp">sTask.erase(start, finish - start);
</code></pre>
<p>heißen.</p>
<p>Und warum benutzt du hier doubles? Längen und Offsets sind doch Ganzzahlen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1211458</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1211458</guid><dc:creator><![CDATA[HumeSikkins]]></dc:creator><pubDate>Wed, 17 Jan 2007 15:32:39 GMT</pubDate></item><item><title><![CDATA[Reply to fehlermeldung on Wed, 17 Jan 2007 15:46:02 GMT]]></title><description><![CDATA[<p>klapt immer noch nicht <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>
<pre><code class="language-cpp">int prev = fPrev_length(i,sTask);
int next = fNext_length(i,sTask);

int start = i - prev;
int finish = i + 1 + next;

cout &lt;&lt; sTask &lt;&lt; endl;
sTask.erase(start,finish - start);
cout &lt;&lt; sTask;
</code></pre>
<p>immer noch beim 1 gibt er 555+666 aus und dann zwar garnix was ja eig richtig ist, aber es kommt wieder die fehlermeldung</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1211465</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1211465</guid><dc:creator><![CDATA[Dj_KoLoGe]]></dc:creator><pubDate>Wed, 17 Jan 2007 15:46:02 GMT</pubDate></item><item><title><![CDATA[Reply to fehlermeldung on Thu, 18 Jan 2007 07:29:46 GMT]]></title><description><![CDATA[<p>Dann zeig doch mal bitte das komplette Programm (und testweise könntest du auch mal die Werte von i, prev und next ausgeben).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1211732</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1211732</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Thu, 18 Jan 2007 07:29:46 GMT</pubDate></item></channel></rss>