<?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 CString SetAt]]></title><description><![CDATA[<p>Hallo zusammen,</p>
<p>Versuche einen char den ich über eine serielle Schnittstelle empfange, einem CString mit SetAt hinzuzufügen. Allerdings bekomme ich dann immer eine Assertion.</p>
<pre><code>do
	{

		fehler=ReadFile(serialconn,&amp;dummy,1, &amp;BytesRead, NULL);
		i++;
		empfang.SetAt(i,dummy);
	}
	while(empfang[i-1]!=suffix);
</code></pre>
<p>empfang ist ein CString und dummy ein char. Das müsste doch so gehen??</p>
<p>Gruß helda</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/169643/problem-mit-cstring-setat</link><generator>RSS for Node</generator><lastBuildDate>Wed, 29 Apr 2026 13:45:06 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/169643.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 07 Jan 2007 13:17:00 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Problem mit CString SetAt on Sun, 07 Jan 2007 13:17:00 GMT]]></title><description><![CDATA[<p>Hallo zusammen,</p>
<p>Versuche einen char den ich über eine serielle Schnittstelle empfange, einem CString mit SetAt hinzuzufügen. Allerdings bekomme ich dann immer eine Assertion.</p>
<pre><code>do
	{

		fehler=ReadFile(serialconn,&amp;dummy,1, &amp;BytesRead, NULL);
		i++;
		empfang.SetAt(i,dummy);
	}
	while(empfang[i-1]!=suffix);
</code></pre>
<p>empfang ist ein CString und dummy ein char. Das müsste doch so gehen??</p>
<p>Gruß helda</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1204957</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1204957</guid><dc:creator><![CDATA[helda]]></dc:creator><pubDate>Sun, 07 Jan 2007 13:17:00 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit CString SetAt on Sun, 07 Jan 2007 15:22:16 GMT]]></title><description><![CDATA[<p>Für SetAt muss der String bereits groß genug sein. Ist der es nicht fliegt Dir die ganze Sache mit einem ASSERT um die Ohren.<br />
Also einfach entweder += verwenden oder den Buffer vorher mit GetBuffer oder SetLength groß genug machen.</p>
<p>Bei += sieht das ganze so aus:</p>
<pre><code class="language-cpp">do
{
  fehler=ReadFile(serialconn,&amp;dummy,1, &amp;BytesRead, NULL);
  empfang += dummy;
}
while(empfang[empfang.GetLength()-1]!=suffix);
</code></pre>
<p>BTW: In dieser Form die Daten zu Lesen ist uneffektiv. Lies doch soviel Daten wie Möglich auf einen Schlag!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1205051</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1205051</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Sun, 07 Jan 2007 15:22:16 GMT</pubDate></item></channel></rss>