<?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[Funktion, Parameter benötigt konvertieren... ???]]></title><description><![CDATA[<p>Hallo Leute!</p>
<p>Ich hab ein Problem, wobei es da vermutlich nur daran liegt, dass mir die Grundlagen stark fehlen:<br />
ich empfange über RS232 Telegramme, diese hab ich dann als CString vorliegen. Die Einzelnen (relevanten) Teile des Telegramms habe ich seperat in einem CString</p>
<pre><code class="language-cpp">CString strCalc
</code></pre>
<p>darüber möchte ich mit folgender Funktion (in meiner StateMachine zum Empfang des Telegramms) eine Checksumme bilden um mein empfangenes Telegramm auf Fehler prüfen zu können:</p>
<pre><code class="language-cpp">unsigned int CProtokollierungDlg::CalcCRC(unsigned char *dat, unsigned char anz)
{
	unsigned char i=0;
	unsigned int uSum=0;

	for(i=0; i &lt; anz; i++)
		uSum = UpdateCRC(dat[i],uSum);
	return (uSum);
}
</code></pre>
<p>Mein Problem ist jetzt schlichtweg, dass ich keine Ahnung hab, wie ich den CString strCalc <strong>konvertiere</strong>, dass meine Funktion was damit anfangen kann und mir ne ordentliche Checksumme ausspuckt.</p>
<p>Vielen Dank für Eure Hilfe und Bitte seht mir nach, dass ich nicht alleine damit zurecht komm, ich arbeite erst seit kurzem mit C++/MFC</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/157649/funktion-parameter-benötigt-konvertieren</link><generator>RSS for Node</generator><lastBuildDate>Sun, 26 Jul 2026 22:02:17 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/157649.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 28 Aug 2006 10:03:51 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Funktion, Parameter benötigt konvertieren... ??? on Mon, 28 Aug 2006 10:03:51 GMT]]></title><description><![CDATA[<p>Hallo Leute!</p>
<p>Ich hab ein Problem, wobei es da vermutlich nur daran liegt, dass mir die Grundlagen stark fehlen:<br />
ich empfange über RS232 Telegramme, diese hab ich dann als CString vorliegen. Die Einzelnen (relevanten) Teile des Telegramms habe ich seperat in einem CString</p>
<pre><code class="language-cpp">CString strCalc
</code></pre>
<p>darüber möchte ich mit folgender Funktion (in meiner StateMachine zum Empfang des Telegramms) eine Checksumme bilden um mein empfangenes Telegramm auf Fehler prüfen zu können:</p>
<pre><code class="language-cpp">unsigned int CProtokollierungDlg::CalcCRC(unsigned char *dat, unsigned char anz)
{
	unsigned char i=0;
	unsigned int uSum=0;

	for(i=0; i &lt; anz; i++)
		uSum = UpdateCRC(dat[i],uSum);
	return (uSum);
}
</code></pre>
<p>Mein Problem ist jetzt schlichtweg, dass ich keine Ahnung hab, wie ich den CString strCalc <strong>konvertiere</strong>, dass meine Funktion was damit anfangen kann und mir ne ordentliche Checksumme ausspuckt.</p>
<p>Vielen Dank für Eure Hilfe und Bitte seht mir nach, dass ich nicht alleine damit zurecht komm, ich arbeite erst seit kurzem mit C++/MFC</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1125977</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1125977</guid><dc:creator><![CDATA[chefcamper]]></dc:creator><pubDate>Mon, 28 Aug 2006 10:03:51 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion, Parameter benötigt konvertieren... ??? on Mon, 28 Aug 2006 10:16:26 GMT]]></title><description><![CDATA[<p>Schau mal in die FAQ. <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="🙂"
    /><br />
Kategorie: Casten</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1125988</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1125988</guid><dc:creator><![CDATA[estartu]]></dc:creator><pubDate>Mon, 28 Aug 2006 10:16:26 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion, Parameter benötigt konvertieren... ??? on Mon, 28 Aug 2006 10:21:44 GMT]]></title><description><![CDATA[<p>estartu schrieb:</p>
<blockquote>
<p>Schau mal in die FAQ. <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="🙂"
    /><br />
Kategorie: Casten</p>
</blockquote>
<p>hab ich bereits, hilft mir aber nix, weil ich nicht weis, wie ichs anwenden soll <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="😞"
    /><br />
wie gesagt, mir fehlts an den Grundlagen</p>
<p>hab versucht mit:</p>
<pre><code class="language-cpp">int iCalc = atoi(strCalc);
</code></pre>
<p>allerdings spuckt er mir schlichtweg eine &quot;1&quot; aus. Inhalt von strCalc sieht etwa so aus:</p>
<p>strCalc schrieb:</p>
<blockquote>
<p>01WOUT000400605BC2</p>
</blockquote>
]]></description><link>https://www.c-plusplus.net/forum/post/1125990</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1125990</guid><dc:creator><![CDATA[chefcamper]]></dc:creator><pubDate>Mon, 28 Aug 2006 10:21:44 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion, Parameter benötigt konvertieren... ??? on Mon, 28 Aug 2006 10:22:52 GMT]]></title><description><![CDATA[<p>Also du willst einen CString in ein unsigned char*/char konvertieren wenn ich richtig verstehe. Dazu ist in CString eine &quot;operator LPCTSTR&quot; Funktion definiert.<br />
Diese wandelt einen CString impliziert zu einem char* um wenn es nötig ist. Eine weitere Konvertierung zu unsigned char* dürfte dann für den Compiler denke ich kein großes Problem mehr sein.<br />
Ich hoffe das war deine Frage....</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1125994</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1125994</guid><dc:creator><![CDATA[TomTom85]]></dc:creator><pubDate>Mon, 28 Aug 2006 10:22:52 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion, Parameter benötigt konvertieren... ??? on Mon, 28 Aug 2006 10:36:38 GMT]]></title><description><![CDATA[<p>Korrektur:</p>
<p>Du musst als funktionsparameter dann LPCTSTR als Typ hernehmen.<br />
LPCTSTR ist entweder als char* oder, fals Unicode, als wchar_t* definiert.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1126005</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1126005</guid><dc:creator><![CDATA[TomTom85]]></dc:creator><pubDate>Mon, 28 Aug 2006 10:36:38 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion, Parameter benötigt konvertieren... ??? on Mon, 28 Aug 2006 10:54:51 GMT]]></title><description><![CDATA[<p>Korrektur:</p>
<p>Bin heut nicht ganz auf der Höhe! Jetzt aber dafür vollständig.</p>
<p>unsigned int CProtokollierungDlg::CalcCRC(LPCTSTR dat, LPCTSTR anz)</p>
<p>Das ist dein Funktionsrumpf.<br />
Erläuterung:</p>
<p>LPCTSTR wird je nachdem ob _UNICODE definiert zu einem const char* oder zu einem const wchar_t*(ist dabei als ein unsigned short* definiert).<br />
wenn du unbedingt auf ein unsigned char angewiesen bist, dann musst du den<br />
Typ LPCTSTR in der Funktion zu einem unsigned char* casten. Vergiss aber nicht<br />
LPCTSTR auf Typ du überprüfen. Wende dazu einen sizeof(LPCTSTR) an.<br />
Ist das Ergebnis 2 Byte, dann hast du es mit UNICODE zu tun und kannst nicht in ein<br />
char* casten. Wenn 1 Byte dann casten und fertig.</p>
<p>Ich hoffe das hilft dir weiter</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1126024</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1126024</guid><dc:creator><![CDATA[TomTom85]]></dc:creator><pubDate>Mon, 28 Aug 2006 10:54:51 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion, Parameter benötigt konvertieren... ??? on Mon, 28 Aug 2006 13:01:29 GMT]]></title><description><![CDATA[<p>Schau Dir mal CString::GetBuffer() an</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1126137</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1126137</guid><dc:creator><![CDATA[jencas]]></dc:creator><pubDate>Mon, 28 Aug 2006 13:01:29 GMT</pubDate></item></channel></rss>