<?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[Heruntergeladenen String analysieren]]></title><description><![CDATA[<p>Hey,<br />
wenn ich diesen Code ausführen möchte(ich denke jeder versteht was er bewirken soll):</p>
<pre><code class="language-cpp">count = recv( sock, buffer, sizeof(buffer), 0); //empfange String int.char*
	printf(buffer);
	std::strcpy(params, buffer);
	sscanf(params, &quot;%d.%s&quot;, mode, param);
</code></pre>
<p>sagt der Debugger mir: Zugriffsverletzung beim Schreiben an Position 0x00000000.<br />
Hat jemand eine Idee, wie ich das regeln kann?</p>
<p>Thx im Voraus<br />
BCX</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/299603/heruntergeladenen-string-analysieren</link><generator>RSS for Node</generator><lastBuildDate>Thu, 13 Aug 2026 05:25:56 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/299603.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 14 Feb 2012 19:02:58 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Heruntergeladenen String analysieren on Tue, 14 Feb 2012 19:02:58 GMT]]></title><description><![CDATA[<p>Hey,<br />
wenn ich diesen Code ausführen möchte(ich denke jeder versteht was er bewirken soll):</p>
<pre><code class="language-cpp">count = recv( sock, buffer, sizeof(buffer), 0); //empfange String int.char*
	printf(buffer);
	std::strcpy(params, buffer);
	sscanf(params, &quot;%d.%s&quot;, mode, param);
</code></pre>
<p>sagt der Debugger mir: Zugriffsverletzung beim Schreiben an Position 0x00000000.<br />
Hat jemand eine Idee, wie ich das regeln kann?</p>
<p>Thx im Voraus<br />
BCX</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2181177</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2181177</guid><dc:creator><![CDATA[BlackCubeX]]></dc:creator><pubDate>Tue, 14 Feb 2012 19:02:58 GMT</pubDate></item><item><title><![CDATA[Reply to Heruntergeladenen String analysieren on Tue, 14 Feb 2012 19:05:45 GMT]]></title><description><![CDATA[<p>BlackCubeX schrieb:</p>
<blockquote>
<p>Hat jemand eine Idee, wie ich das regeln kann?</p>
</blockquote>
<p>Lern programmieren. Was soll man bitte bei deinen nicht vorhandenen Angaben machen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2181179</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2181179</guid><dc:creator><![CDATA[ErnstHaft]]></dc:creator><pubDate>Tue, 14 Feb 2012 19:05:45 GMT</pubDate></item><item><title><![CDATA[Reply to Heruntergeladenen String analysieren on Tue, 14 Feb 2012 19:08:09 GMT]]></title><description><![CDATA[<p>Deine Zeiger sollten auf gültigen Speicher zeigen. 0 ist selten gültig.</p>
<p>Antwort nicht genau genug? Das liegt an der Frage.</p>
<p>P.S.: Und in C++ darfst du auch ruhig so etwas wie vector&lt;char&gt; benutzen, da sparst du dir eine Menge Probleme.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2181180</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2181180</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Tue, 14 Feb 2012 19:08:09 GMT</pubDate></item><item><title><![CDATA[Reply to Heruntergeladenen String analysieren on Tue, 14 Feb 2012 19:20:47 GMT]]></title><description><![CDATA[<p>Ok, dann beschreib ich mal genau was das Ziel ist:<br />
Das Programm empfängt übers Netzwerk einen String char* buffer, der so aufgebaut ist: Zahl von 1-9&quot;.&quot;ein String, in dem auch Whitespaces etc. vorkommen können.<br />
Bis hierhin klappt noch alles. Nun möchte ich die Zahl vor dem Punkt in einen int mode und alles nach dem Punkt in char* param schreiben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2181186</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2181186</guid><dc:creator><![CDATA[BlackCubeX]]></dc:creator><pubDate>Tue, 14 Feb 2012 19:20:47 GMT</pubDate></item><item><title><![CDATA[Reply to Heruntergeladenen String analysieren on Tue, 14 Feb 2012 19:29:43 GMT]]></title><description><![CDATA[<p>BlackCubeX schrieb:</p>
<blockquote>
<p>Ok, dann beschreib ich mal genau was das Ziel ist:<br />
Das Programm empfängt übers Netzwerk einen String char* buffer, der so aufgebaut ist: Zahl von 1-9&quot;.&quot;ein String, in dem auch Whitespaces etc. vorkommen können.<br />
Bis hierhin klappt noch alles. Nun möchte ich die Zahl vor dem Punkt in einen int mode und alles nach dem Punkt in char* param schreiben.</p>
</blockquote>
<p>Für sowas benutzt man nicht C-Funktionen. Sicher, dass du nicht ins C-Forum willst? Sonst: Stringstreams, nimm lieber auch Standard-C++ I/O-Streams (zum Ausgeben).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2181193</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2181193</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Tue, 14 Feb 2012 19:29:43 GMT</pubDate></item><item><title><![CDATA[Reply to Heruntergeladenen String analysieren on Tue, 14 Feb 2012 19:34:54 GMT]]></title><description><![CDATA[<p>Hacker schrieb:</p>
<blockquote>
<p>BlackCubeX schrieb:</p>
<blockquote>
<p>Ok, dann beschreib ich mal genau was das Ziel ist:<br />
Das Programm empfängt übers Netzwerk einen String char* buffer, der so aufgebaut ist: Zahl von 1-9&quot;.&quot;ein String, in dem auch Whitespaces etc. vorkommen können.<br />
Bis hierhin klappt noch alles. Nun möchte ich die Zahl vor dem Punkt in einen int mode und alles nach dem Punkt in char* param schreiben.</p>
</blockquote>
<p>Für sowas benutzt man nicht C-Funktionen. Sicher, dass du nicht ins C-Forum willst? Sonst: Stringstreams, nimm lieber auch Standard-C++ I/O-Streams (zum Ausgeben).</p>
</blockquote>
<p>Ich gebe zu, ich benutze öfter C-Funktionen, da ich für die iwie ein besseres Gefühl hab.<br />
Aber da C++ mir kein Fremdwort ist, hab ich gedacht, ich frag mal hier nach.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2181196</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2181196</guid><dc:creator><![CDATA[BlackCubeX]]></dc:creator><pubDate>Tue, 14 Feb 2012 19:34:54 GMT</pubDate></item><item><title><![CDATA[Reply to Heruntergeladenen String analysieren on Tue, 14 Feb 2012 21:02:56 GMT]]></title><description><![CDATA[<p>scanf bzw. in deinem Fall sscanf musst du einen Pointer übergeben, sonst kann es ja nicht auf deine Variable schreiben. param (char*) ist einer, aber mode ist deinem Text nach ein int also musst du &amp;mode schreiben. Ob das mit dem Formatstring so funktioniert kann ich dir aber nicht sagen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2181241</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2181241</guid><dc:creator><![CDATA[the live]]></dc:creator><pubDate>Tue, 14 Feb 2012 21:02:56 GMT</pubDate></item><item><title><![CDATA[Reply to Heruntergeladenen String analysieren on Wed, 15 Feb 2012 07:43:42 GMT]]></title><description><![CDATA[<p>Ich weiß, dass mich hier gleich jeder hassen wird, aber das nehme ich in Kauf <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_tongue"
      title=":-P"
      alt="😛"
    /></p>
<pre><code class="language-cpp">count = recv( sock, buffer, sizeof(buffer)-1, 0); //empfange String int.char*
buffer[sizeof(buffer)-1]=0;

int mode;

char c; char *str = buffer;
while(c=*(str++))
if(c=='.')*str=0;

mode=atoi(buffer);
++str;

// Zahl in mode
// string in str

// ungetestet
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2181301</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2181301</guid><dc:creator><![CDATA[PhilippHToner]]></dc:creator><pubDate>Wed, 15 Feb 2012 07:43:42 GMT</pubDate></item></channel></rss>