<?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[[ERLEDIGT] Strings oder char*]]></title><description><![CDATA[<p>Hallo Leute,</p>
<p>benutzt man in einem C++ Programm noch die guten alten char*?</p>
<p>Ich würde gerne mal sehen wie diese Funktion:</p>
<pre><code class="language-cpp">void Geoobject::set_comment(const char *new_comment){

	int len = strlen(new_comment);

	if(len &gt; 0 &amp;&amp; len &lt; 65534){
		delete [] this-&gt;comment;
		comment = new char[len+1];
		comment[len+1] = '\0';
		strcpy(comment,new_comment);
	}
	else{
		...
	}
}
</code></pre>
<p>In C++ aussieht.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/269245/erledigt-strings-oder-char</link><generator>RSS for Node</generator><lastBuildDate>Mon, 31 Aug 2026 07:56:21 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/269245.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 22 Jun 2010 08:02:17 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to [ERLEDIGT] Strings oder char* on Tue, 22 Jun 2010 10:13:36 GMT]]></title><description><![CDATA[<p>Hallo Leute,</p>
<p>benutzt man in einem C++ Programm noch die guten alten char*?</p>
<p>Ich würde gerne mal sehen wie diese Funktion:</p>
<pre><code class="language-cpp">void Geoobject::set_comment(const char *new_comment){

	int len = strlen(new_comment);

	if(len &gt; 0 &amp;&amp; len &lt; 65534){
		delete [] this-&gt;comment;
		comment = new char[len+1];
		comment[len+1] = '\0';
		strcpy(comment,new_comment);
	}
	else{
		...
	}
}
</code></pre>
<p>In C++ aussieht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1915565</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1915565</guid><dc:creator><![CDATA[darkfate]]></dc:creator><pubDate>Tue, 22 Jun 2010 10:13:36 GMT</pubDate></item><item><title><![CDATA[Reply to [ERLEDIGT] Strings oder char* on Tue, 22 Jun 2010 08:05:46 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">void Geoobject::set_comment(const std::string &amp;new_comment){
  comment = new_comment;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1915568</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1915568</guid><dc:creator><![CDATA[Fellhuhn]]></dc:creator><pubDate>Tue, 22 Jun 2010 08:05:46 GMT</pubDate></item><item><title><![CDATA[Reply to [ERLEDIGT] Strings oder char* on Tue, 22 Jun 2010 08:09:22 GMT]]></title><description><![CDATA[<p>darkfate schrieb:</p>
<blockquote>
<p>benutzt man in einem C++ Programm noch die guten alten char*?</p>
</blockquote>
<p>So pauschal kann man das nicht sagen. Natürlich benutzt &quot;man&quot; noch Zeiger. Allerdings ist es empfehlenswert Klassen zu verwenden, die einem die SPeicherverwaltung abnehmen.</p>
<pre><code class="language-cpp">void Geoobject::set_comment(const std::string &amp; szNewComment)
{
    if(!sz.NewComment.isempty() &amp;&amp; szNewComment.size() &lt; 65534)
        this-&gt;szComment = szNewComment;
    else
    {}
}
</code></pre>
<p>Sieht wesentlich übersichtlicher aus.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1915573</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1915573</guid><dc:creator><![CDATA[De-Be]]></dc:creator><pubDate>Tue, 22 Jun 2010 08:09:22 GMT</pubDate></item><item><title><![CDATA[Reply to [ERLEDIGT] Strings oder char* on Tue, 22 Jun 2010 08:18:04 GMT]]></title><description><![CDATA[<p>Danke schonmal für die Antworten.</p>
<p>Hat die String Klasse eine obere Grenze?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1915580</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1915580</guid><dc:creator><![CDATA[darkfate]]></dc:creator><pubDate>Tue, 22 Jun 2010 08:18:04 GMT</pubDate></item><item><title><![CDATA[Reply to [ERLEDIGT] Strings oder char* on Tue, 22 Jun 2010 08:23:03 GMT]]></title><description><![CDATA[<p>darkfate schrieb:</p>
<blockquote>
<p>Hat die String Klasse eine obere Grenze?</p>
</blockquote>
<p>Theoretisch nicht. praktisch wird natürlich irgendwo Ende sein und eine Exception (bad_alloc oder dergleichen) fliegen, das ist allerdings normalerweise weit jenseits der 64k, die du in deiner char*-Version festgenagelt hast.<br />
Aus dem Grund ist auch die Abfrage in De-Be's Version vom C++-Standpunkt her ebenso unnötig wie die Präfixe für die ungarische Notation.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1915581</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1915581</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Tue, 22 Jun 2010 08:23:03 GMT</pubDate></item><item><title><![CDATA[Reply to [ERLEDIGT] Strings oder char* on Tue, 22 Jun 2010 08:32:32 GMT]]></title><description><![CDATA[<p>pumuckl schrieb:</p>
<blockquote>
<p>Theoretisch nicht.</p>
</blockquote>
<p>Naja, theoretisch dürfte die Obergrenze bei <code>std::numeric_limits&lt;std::string::size_type&gt;::max()</code> liegen...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1915587</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1915587</guid><dc:creator><![CDATA[Tachyon]]></dc:creator><pubDate>Tue, 22 Jun 2010 08:32:32 GMT</pubDate></item><item><title><![CDATA[Reply to [ERLEDIGT] Strings oder char* on Tue, 22 Jun 2010 08:32:54 GMT]]></title><description><![CDATA[<p>Hat schon irgendwer erwähnt, dass die set_comment Funktion undefiniertes Verhalten erzeugt?</p>
<pre><code class="language-cpp">comment[len+1] = '\0';
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1915588</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1915588</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Tue, 22 Jun 2010 08:32:54 GMT</pubDate></item><item><title><![CDATA[Reply to [ERLEDIGT] Strings oder char* on Tue, 22 Jun 2010 08:35:06 GMT]]></title><description><![CDATA[<p>Braunstein schrieb:</p>
<blockquote>
<p>Hat schon irgendwer erwähnt, dass die set_comment Funktion undefiniertes Verhalten erzeugt?</p>
<pre><code class="language-cpp">comment[len+1] = '\0';
</code></pre>
</blockquote>
<p>Huch?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1915589</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1915589</guid><dc:creator><![CDATA[darkfate]]></dc:creator><pubDate>Tue, 22 Jun 2010 08:35:06 GMT</pubDate></item><item><title><![CDATA[Reply to [ERLEDIGT] Strings oder char* on Tue, 22 Jun 2010 08:37:58 GMT]]></title><description><![CDATA[<p>darkfate schrieb:</p>
<blockquote>
<p>Braunstein schrieb:</p>
<blockquote>
<p>Hat schon irgendwer erwähnt, dass die set_comment Funktion undefiniertes Verhalten erzeugt?</p>
<pre><code class="language-cpp">comment[len+1] = '\0';
</code></pre>
</blockquote>
<p>Huch?</p>
</blockquote>
<p>Good catch, Braunstein!<br />
darkfate, Du meintest wohl comment[len] = '\0';<br />
Es ist aber sowieso überflüssig, da sich strcpy schon um die Nullterminierung kümmert.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1915591</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1915591</guid><dc:creator><![CDATA[krümelkacker]]></dc:creator><pubDate>Tue, 22 Jun 2010 08:37:58 GMT</pubDate></item><item><title><![CDATA[Reply to [ERLEDIGT] Strings oder char* on Tue, 22 Jun 2010 08:43:12 GMT]]></title><description><![CDATA[<p>Braunstein schrieb:</p>
<blockquote>
<p>Hat schon irgendwer erwähnt, dass die set_comment Funktion undefiniertes Verhalten erzeugt?</p>
<pre><code class="language-cpp">comment[len+1] = '\0';
</code></pre>
</blockquote>
<p>Und das ... dürfte auch nicht kompilieren. <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>
]]></description><link>https://www.c-plusplus.net/forum/post/1915596</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1915596</guid><dc:creator><![CDATA[Fellhuhn]]></dc:creator><pubDate>Tue, 22 Jun 2010 08:43:12 GMT</pubDate></item><item><title><![CDATA[Reply to [ERLEDIGT] Strings oder char* on Tue, 22 Jun 2010 08:48:12 GMT]]></title><description><![CDATA[<p>Fellhuhn schrieb:</p>
<blockquote>
<p>Braunstein schrieb:</p>
<blockquote>
<p>Hat schon irgendwer erwähnt, dass die set_comment Funktion undefiniertes Verhalten erzeugt?</p>
<pre><code class="language-cpp">comment[len+1] = '\0';
</code></pre>
</blockquote>
<p>Und das ... dürfte auch nicht kompilieren. <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>
</blockquote>
<p>Da irrst du dich gewaltig, MSVC kompiliert nur so, so und nicht anders <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 />
Daher dieser Windows Experience.</p>
<p>Danke für den Hinweis Braunstein <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/1915601</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1915601</guid><dc:creator><![CDATA[darkfate]]></dc:creator><pubDate>Tue, 22 Jun 2010 08:48:12 GMT</pubDate></item><item><title><![CDATA[Reply to [ERLEDIGT] Strings oder char* on Tue, 22 Jun 2010 08:56:17 GMT]]></title><description><![CDATA[<p>Wie sieht dann get_comment aus? So in etwa?</p>
<pre><code class="language-cpp">std::string const &amp;Geoobject::get_comment() const{
	return this-&gt;comment;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1915604</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1915604</guid><dc:creator><![CDATA[darkfate]]></dc:creator><pubDate>Tue, 22 Jun 2010 08:56:17 GMT</pubDate></item><item><title><![CDATA[Reply to [ERLEDIGT] Strings oder char* on Tue, 22 Jun 2010 09:07:54 GMT]]></title><description><![CDATA[<p>darkfate schrieb:</p>
<blockquote>
<p>Wie sieht dann get_comment aus? So in etwa?</p>
<pre><code class="language-cpp">std::string const &amp;Geoobject::get_comment() const{
	return this-&gt;comment;
}
</code></pre>
</blockquote>
<p>ja. wobei das this-&gt; weggelassen werden kann.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1915611</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1915611</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Tue, 22 Jun 2010 09:07:54 GMT</pubDate></item></channel></rss>