<?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[*char mit unbegrenzter Länge?]]></title><description><![CDATA[<p>Hallo Zusammen,<br />
ich habe (mal wieder <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /> ) ein kleines Problem:</p>
<p>Ich habe folgende Struct:</p>
<pre><code class="language-cpp">struct line{
	char Text[30];
};
</code></pre>
<p>und ein Array dieser Struct:</p>
<pre><code class="language-cpp">line speicher[50];
</code></pre>
<p>wenn ich nun eine Funktion</p>
<pre><code class="language-cpp">void irgendeineFunktion(const char * Text)
</code></pre>
<p>so Aufrufe,</p>
<pre><code class="language-cpp">irgendeineFunktion(speicher[1].Text)
</code></pre>
<p>erhält diese Funktion nicht nur 30 Zeilen (sondern alle 1500) und arbeitet deshalb auch falsch.<br />
Auf den Quellcode der Funktion habe ich leider keinen zugriff. Wie kann ich nun dieser Funktion nur 30 Zeichen übergeben?</p>
<p>mfg, jonnybx</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/296374/char-mit-unbegrenzter-länge</link><generator>RSS for Node</generator><lastBuildDate>Sat, 15 Aug 2026 00:08:37 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/296374.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 03 Dec 2011 14:49:38 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to *char mit unbegrenzter Länge? on Sat, 03 Dec 2011 14:49:38 GMT]]></title><description><![CDATA[<p>Hallo Zusammen,<br />
ich habe (mal wieder <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /> ) ein kleines Problem:</p>
<p>Ich habe folgende Struct:</p>
<pre><code class="language-cpp">struct line{
	char Text[30];
};
</code></pre>
<p>und ein Array dieser Struct:</p>
<pre><code class="language-cpp">line speicher[50];
</code></pre>
<p>wenn ich nun eine Funktion</p>
<pre><code class="language-cpp">void irgendeineFunktion(const char * Text)
</code></pre>
<p>so Aufrufe,</p>
<pre><code class="language-cpp">irgendeineFunktion(speicher[1].Text)
</code></pre>
<p>erhält diese Funktion nicht nur 30 Zeilen (sondern alle 1500) und arbeitet deshalb auch falsch.<br />
Auf den Quellcode der Funktion habe ich leider keinen zugriff. Wie kann ich nun dieser Funktion nur 30 Zeichen übergeben?</p>
<p>mfg, jonnybx</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2152343</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2152343</guid><dc:creator><![CDATA[jonnybx]]></dc:creator><pubDate>Sat, 03 Dec 2011 14:49:38 GMT</pubDate></item><item><title><![CDATA[Reply to *char mit unbegrenzter Länge? on Sat, 03 Dec 2011 14:51:20 GMT]]></title><description><![CDATA[<p>Ganz einfach: Benutze <strong>std::string</strong>!</p>
<p>Edit: Und die Übergabe an die Funktion machst Du dann per meinString.c_str().</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2152345</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2152345</guid><dc:creator><![CDATA[theta]]></dc:creator><pubDate>Sat, 03 Dec 2011 14:51:20 GMT</pubDate></item><item><title><![CDATA[Reply to *char mit unbegrenzter Länge? on Sat, 03 Dec 2011 14:56:09 GMT]]></title><description><![CDATA[<p>++theta;<br />
Aber zu dem Fehler: Ist der Text denn nullterminiert?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2152349</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2152349</guid><dc:creator><![CDATA[cooky451]]></dc:creator><pubDate>Sat, 03 Dec 2011 14:56:09 GMT</pubDate></item><item><title><![CDATA[Reply to *char mit unbegrenzter Länge? on Sat, 03 Dec 2011 15:01:18 GMT]]></title><description><![CDATA[<p>du hast das glück das du ind einem struct keine anderen member hast. der standard garantiert dass bei nem array alle elemente hinterienander liegen, so und deshalb leigen bei dir alle 1500 chars hintereinander und ohne kontrolle checken normale funktionen alle chars dann ab (sprich ohne abschliessende 0)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2152350</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2152350</guid><dc:creator><![CDATA[Skym0sh0]]></dc:creator><pubDate>Sat, 03 Dec 2011 15:01:18 GMT</pubDate></item><item><title><![CDATA[Reply to *char mit unbegrenzter Länge? on Sat, 03 Dec 2011 15:05:57 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/25760">@cooky451</a><br />
Ich habe es versucht, indem ich am ende \0 angefügt habe, es hat aber nicht funktioniert.</p>
<p>Ich habe es jetzt mit std::string versucht, jedoch kann ich nicht herausfinden wie ich einem String ein einzelnes char anfüge.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2152353</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2152353</guid><dc:creator><![CDATA[jonnybx]]></dc:creator><pubDate>Sat, 03 Dec 2011 15:05:57 GMT</pubDate></item><item><title><![CDATA[Reply to *char mit unbegrenzter Länge? on Sat, 03 Dec 2011 15:07:00 GMT]]></title><description><![CDATA[<p>mit +</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2152355</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2152355</guid><dc:creator><![CDATA[Skym0sh0]]></dc:creator><pubDate>Sat, 03 Dec 2011 15:07:00 GMT</pubDate></item><item><title><![CDATA[Reply to *char mit unbegrenzter Länge? on Sat, 03 Dec 2011 15:07:10 GMT]]></title><description><![CDATA[<blockquote>
<p>jedoch kann ich nicht herausfinden wie ich einem String ein einzelnes char anfüge.</p>
</blockquote>
<p>Entweder mit += oder mit append(..)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2152356</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2152356</guid><dc:creator><![CDATA[theta]]></dc:creator><pubDate>Sat, 03 Dec 2011 15:07:10 GMT</pubDate></item><item><title><![CDATA[Reply to *char mit unbegrenzter Länge? on Sat, 03 Dec 2011 15:44:36 GMT]]></title><description><![CDATA[<p>Und ein Struct mit nur einem Member wird bei dir höchstwahrscheinlich auch wenig Sinn machen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2152374</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2152374</guid><dc:creator><![CDATA[*Rewind*]]></dc:creator><pubDate>Sat, 03 Dec 2011 15:44:36 GMT</pubDate></item><item><title><![CDATA[Reply to *char mit unbegrenzter Länge? on Sat, 03 Dec 2011 16:24:42 GMT]]></title><description><![CDATA[<p>jonnybx schrieb:</p>
<blockquote>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/25760">@cooky451</a><br />
Ich habe es versucht, indem ich am ende \0 angefügt habe, es hat aber nicht funktioniert.</p>
</blockquote>
<p>Dann zeig mal den Code dazu. Der ist mit Sicherheit falsch!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2152388</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2152388</guid><dc:creator><![CDATA[manni66]]></dc:creator><pubDate>Sat, 03 Dec 2011 16:24:42 GMT</pubDate></item><item><title><![CDATA[Reply to *char mit unbegrenzter Länge? on Sat, 03 Dec 2011 18:16:26 GMT]]></title><description><![CDATA[<p>Ich kann den Fehler nicht reproduzieren.</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;

struct line{
    char Text[30];
};

void irgendeineFunktion(const char * Text)
{
	std::cout &lt;&lt; Text &lt;&lt; std::endl;
}

int main()
{
	line speicher[50];

	std::strcpy(speicher[1].Text, &quot;Test!&quot;);

	irgendeineFunktion(speicher[1].Text);

	return 0;
}
</code></pre>
<p>Warum nutzt du nicht std::string?</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;string&gt;

struct line{
    std::string Text;
};

void irgendeineFunktion(const std::string&amp; Text)
{
	std::cout &lt;&lt; Text &lt;&lt; std::endl;
}

int main()
{
	line speicher[50];

	speicher[1].Text = &quot;Dieser Text kann beliebig lang sein und lässt sich einfacher verwenden als der andere Mist&quot;;

	speicher[1].Text += &quot;!!!!!!!!!!&quot;; // Anhängen

	irgendeineFunktion(speicher[1].Text);

	return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2152462</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2152462</guid><dc:creator><![CDATA[jhkhjk]]></dc:creator><pubDate>Sat, 03 Dec 2011 18:16:26 GMT</pubDate></item></channel></rss>