<?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[Funktionen mit Zeiger als Rückgabewert]]></title><description><![CDATA[<p>Hallo!</p>
<p>DIesmal hab ich folgendes Problem:</p>
<pre><code class="language-cpp">char *test1(void){
   char buffer[10];
   strcpy(buffer, &quot;testwert&quot;);
   return buffer;
}
</code></pre>
<p>wieso gibt</p>
<pre><code class="language-cpp">char *ptr;

 ptr = test1();
</code></pre>
<p>wieso bekommt die referenz vom zeiger ptr dann nicht den Wert testwert ??<br />
wenn ich in der test1 funktion char buffer [10]; als static deklariere läuft es jedoch... wieso das??</p>
<p>thx &amp; mfg!! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f576.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--sunglasses"
      title=":sunglasses:"
      alt="🕶"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f576.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--sunglasses"
      title=":sunglasses:"
      alt="🕶"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/topic/157345/funktionen-mit-zeiger-als-rückgabewert</link><generator>RSS for Node</generator><lastBuildDate>Wed, 09 Sep 2026 02:33:29 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/157345.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 24 Aug 2006 18:49:23 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Funktionen mit Zeiger als Rückgabewert on Thu, 24 Aug 2006 18:50:36 GMT]]></title><description><![CDATA[<p>Hallo!</p>
<p>DIesmal hab ich folgendes Problem:</p>
<pre><code class="language-cpp">char *test1(void){
   char buffer[10];
   strcpy(buffer, &quot;testwert&quot;);
   return buffer;
}
</code></pre>
<p>wieso gibt</p>
<pre><code class="language-cpp">char *ptr;

 ptr = test1();
</code></pre>
<p>wieso bekommt die referenz vom zeiger ptr dann nicht den Wert testwert ??<br />
wenn ich in der test1 funktion char buffer [10]; als static deklariere läuft es jedoch... wieso das??</p>
<p>thx &amp; mfg!! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f576.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--sunglasses"
      title=":sunglasses:"
      alt="🕶"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f576.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--sunglasses"
      title=":sunglasses:"
      alt="🕶"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1124076</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1124076</guid><dc:creator><![CDATA[JossBoss]]></dc:creator><pubDate>Thu, 24 Aug 2006 18:50:36 GMT</pubDate></item><item><title><![CDATA[Reply to Funktionen mit Zeiger als Rückgabewert on Thu, 24 Aug 2006 19:21:24 GMT]]></title><description><![CDATA[<p>Weil lokale Variablen am Ende der Funktion zerstört werden. Statische Variablen hingegen überdauern die gesamte Laufzeit des Programms.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1124084</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1124084</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Thu, 24 Aug 2006 19:21:24 GMT</pubDate></item><item><title><![CDATA[Reply to Funktionen mit Zeiger als Rückgabewert on Thu, 24 Aug 2006 23:40:02 GMT]]></title><description><![CDATA[<p>mach mal:</p>
<pre><code class="language-cpp">char *test1(void){
   char *buffer = new char[10];
   strcpy(buffer, &quot;testwert&quot;);
   return buffer;
}	

char *ptr = test1();	
...
// am schluss immer schön den speicher freigeben...
delete [] ptr;
</code></pre>
<p>cu</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1124158</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1124158</guid><dc:creator><![CDATA[cpp1]]></dc:creator><pubDate>Thu, 24 Aug 2006 23:40:02 GMT</pubDate></item><item><title><![CDATA[Reply to Funktionen mit Zeiger als Rückgabewert on Fri, 25 Aug 2006 00:45:20 GMT]]></title><description><![CDATA[<p>schau mal hier JossBoss:<br />
<a href="http://tutorial.schornboeck.net/referenz_return.htm" rel="nofollow">http://tutorial.schornboeck.net/referenz_return.htm</a> <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="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1124170</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1124170</guid><dc:creator><![CDATA[cpp1]]></dc:creator><pubDate>Fri, 25 Aug 2006 00:45:20 GMT</pubDate></item><item><title><![CDATA[Reply to Funktionen mit Zeiger als Rückgabewert on Fri, 25 Aug 2006 07:26:35 GMT]]></title><description><![CDATA[<p>cpp1 schrieb:</p>
<blockquote>
<p>mach mal:<br />
...</p>
</blockquote>
<p>Dann begreife, was es tut ..... und mach es nie 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="😉"
    /><br />
(bei einer solchen Situation ist es kaum zu vermeiden, dass man hier/da ein delete[] vergisst oder das falsche delete verwendet....)<br />
Zum Lernen ist das natürlich gut und erlaubt, aber es zeigt eben auch, welche Probleme man mit Zeigern als Rückgabewert hat: Man weiß nicht, wem sie &quot;gehören&quot; (sprich: Wer dafür sorgen muss, Speicher wieder freizugeben), noch &quot;was sie sind&quot; (vielleicht nur die Adresse eines Speicherstücks auf dem Stack ? Oder auf ein Stringliteral ? Oder etwas Anderes, worauf man kein delete machen darf ?)...</p>
<p>Gruß,</p>
<p>Simon2.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1124233</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1124233</guid><dc:creator><![CDATA[Simon2]]></dc:creator><pubDate>Fri, 25 Aug 2006 07:26:35 GMT</pubDate></item><item><title><![CDATA[Reply to Funktionen mit Zeiger als Rückgabewert on Fri, 25 Aug 2006 11:05:00 GMT]]></title><description><![CDATA[<p>Ja, und jetzt noch die Lösung zum Problem:</p>
<pre><code class="language-cpp">#include &lt;string&gt;

std::string test()
{
    std::string ret = &quot;Testwert&quot;; // ...
    return ret;
}

// ...
std::string foo = test();
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1124298</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1124298</guid><dc:creator><![CDATA[Konrad Rudolph]]></dc:creator><pubDate>Fri, 25 Aug 2006 11:05:00 GMT</pubDate></item><item><title><![CDATA[Reply to Funktionen mit Zeiger als Rückgabewert on Fri, 25 Aug 2006 11:08:57 GMT]]></title><description><![CDATA[<p>a ja k vielen dank für die erklärung... ist eigentlich ganz einleuchtend, dass der speicher der variable dann unbesetzt ist... thx!</p>
<p>eine allgemeine frage zu den rückgabewerten per zeiger,<br />
unter welcher form wird der zeiger zurückgeliefert?</p>
<pre><code class="language-cpp">int* foo(int value)
    {
      int arr[2];
      arr[0]=value;
      arr[1]=-value;
      return arr;
    }
</code></pre>
<p>ist der rückgabe wert &amp;arr, oder arr??<br />
in diesem fall würde ich sagen arr, weils halt ein array ist oder?</p>
<p>PS:<br />
Vielen dank für die lösungen leute, aber die sind nicht das problem, die hab ich schon, das prob. is halt nur dass ich nich verstand weshalb die funktion falsche werte zurückliefert, tritzdem thx <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="😉"
    /></p>
<p>thx &amp; mfg!! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1124300</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1124300</guid><dc:creator><![CDATA[JossBoss]]></dc:creator><pubDate>Fri, 25 Aug 2006 11:08:57 GMT</pubDate></item><item><title><![CDATA[Reply to Funktionen mit Zeiger als Rückgabewert on Fri, 25 Aug 2006 12:06:18 GMT]]></title><description><![CDATA[<p>Nur der Name eines Arrays wird implizit in einen Pointer umgewandelt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1124327</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1124327</guid><dc:creator><![CDATA[Thomas ** 0]]></dc:creator><pubDate>Fri, 25 Aug 2006 12:06:18 GMT</pubDate></item><item><title><![CDATA[Reply to Funktionen mit Zeiger als Rückgabewert on Sat, 26 Aug 2006 15:06:08 GMT]]></title><description><![CDATA[<p>sry aber ich versteh nich so ganz wie du das jetzt meinst...</p>
<p>thx &amp; mfg! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f576.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--sunglasses"
      title=":sunglasses:"
      alt="🕶"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1124967</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1124967</guid><dc:creator><![CDATA[JossBoss]]></dc:creator><pubDate>Sat, 26 Aug 2006 15:06:08 GMT</pubDate></item><item><title><![CDATA[Reply to Funktionen mit Zeiger als Rückgabewert on Sat, 26 Aug 2006 18:35:55 GMT]]></title><description><![CDATA[<p>LordJaxom schrieb:</p>
<blockquote>
<p>Weil lokale Variablen am Ende der Funktion zerstört werden. Statische Variablen hingegen überdauern die gesamte Laufzeit des Programms.</p>
</blockquote>
<p>Das ist die Antwort!! Nach dem return (Ende der Funktion) ist arr nicht mehr gültig und du verweist auf einen Speicherbereich der freigegeben ist.</p>
<p>Ob du &amp;arr oder arr schreibst ist egal, beides das selbe.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1125093</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1125093</guid><dc:creator><![CDATA[Thomas ** 0]]></dc:creator><pubDate>Sat, 26 Aug 2006 18:35:55 GMT</pubDate></item><item><title><![CDATA[Reply to Funktionen mit Zeiger als Rückgabewert on Sun, 27 Aug 2006 09:26:57 GMT]]></title><description><![CDATA[<p>[quote=&quot;Thomas (:&quot;]</p>
<p>LordJaxom schrieb:</p>
<blockquote>
<p>Ob du &amp;arr oder arr schreibst ist egal, beides das selbe.</p>
</blockquote>
<p>nein, &amp;arr ist ein Zeiger auf ein Array und arr ein Zeiger auf das erste Element des Arrays. Also ist es egal ob du arr oder &amp;arr[0] schreibst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1125236</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1125236</guid><dc:creator><![CDATA[asdfghjklökfgg]]></dc:creator><pubDate>Sun, 27 Aug 2006 09:26:57 GMT</pubDate></item><item><title><![CDATA[Reply to Funktionen mit Zeiger als Rückgabewert on Sun, 27 Aug 2006 09:41:14 GMT]]></title><description><![CDATA[<p>Kommt im Endeffekt aufs gleiche raus in seinem Beispiel.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1125243</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1125243</guid><dc:creator><![CDATA[Thomas ** 0]]></dc:creator><pubDate>Sun, 27 Aug 2006 09:41:14 GMT</pubDate></item><item><title><![CDATA[Reply to Funktionen mit Zeiger als Rückgabewert on Sun, 27 Aug 2006 09:44:01 GMT]]></title><description><![CDATA[<p>yo das mit dem freigegebenen speicher weiss ich schon, das problem ist, ich schnall nicht wie die funktionen einen pointer zurückliefern sry, auc wenn es sicher total einfach zu verstehen is...</p>
<p>die funktion liefert ja eigentlich die adresse zurück wieso lautet die funktions deklaration dann nich, oder bedeutet der dereferenzierungsoperator nur, dass der rückgabewert nur und nur an einen pointer (von mir aus in der main() funkt. definiert) übergeben werden kann. die funktion aber selbst eben keinen pointer übergibt, sondern den wert an einen pointer.</p>
<p>thx &amp; mfg!!! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1125245</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1125245</guid><dc:creator><![CDATA[JossBoss]]></dc:creator><pubDate>Sun, 27 Aug 2006 09:44:01 GMT</pubDate></item><item><title><![CDATA[Reply to Funktionen mit Zeiger als Rückgabewert on Sun, 27 Aug 2006 09:51:44 GMT]]></title><description><![CDATA[<p>Ich versteh den Satz nicht, kannst du mal Satzzeichen einbauen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1125251</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1125251</guid><dc:creator><![CDATA[Thomas ** 0]]></dc:creator><pubDate>Sun, 27 Aug 2006 09:51:44 GMT</pubDate></item><item><title><![CDATA[Reply to Funktionen mit Zeiger als Rückgabewert on Sun, 27 Aug 2006 10:22:21 GMT]]></title><description><![CDATA[<p>ja in ordnung</p>
<p>also die funktion gibt seinen wert nur an einen pointer weiter, das bedeutet ja auch dass sie die adresse zurückliefert denn *ptr1 = *ptr2 geht ja nich, da wir jetzt davon ausgehen, dass ptr1 nicht definiert wurde. ptr2 stellt hier den rückgabewert vor. damit es läuft, kann der rück.wert dann nur die adresse sein, wie ich vorhin schon sagte also &amp;ptr2 oder ptr2.</p>
<p>also müsste man doch dann eigentlich sagene, die funktion würde eine adresse zurückliefern jund keinen pointer sonder die adresse an einen pointer.</p>
<p>thx &amp; mfg!!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1125264</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1125264</guid><dc:creator><![CDATA[JossBoss]]></dc:creator><pubDate>Sun, 27 Aug 2006 10:22:21 GMT</pubDate></item><item><title><![CDATA[Reply to Funktionen mit Zeiger als Rückgabewert on Sun, 27 Aug 2006 10:47:26 GMT]]></title><description><![CDATA[<p>ein pointer _ist_ eine adresse</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1125274</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1125274</guid><dc:creator><![CDATA[THX 1138]]></dc:creator><pubDate>Sun, 27 Aug 2006 10:47:26 GMT</pubDate></item><item><title><![CDATA[Reply to Funktionen mit Zeiger als Rückgabewert on Sun, 27 Aug 2006 11:27:59 GMT]]></title><description><![CDATA[<p>ach ich dachte ein pointer ist ne variable, die ne adresse einer anderen enthält...<br />
Beweis:</p>
<blockquote>
<p>Zeiger sind im Prinzip nichts anderes als ganz normale Variablen, die statt Datenobjekten wie Zahlen, Zeichen oder Strukturen eben Adressen eines bestimmten Speicherbereichs beinhalten.</p>
</blockquote>
<p><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="😉"
    /></p>
<p>ausschnitt aus dem buch c von a bis z,<br />
bei <a href="http://www.galileocomputing.de" rel="nofollow">www.galileocomputing.de</a> gibts das teil umsonst (als e-book)!!<br />
ist die sonstige interpretation von mir richtig oder nich?</p>
<p>thx &amp; mfg!! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1125281</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1125281</guid><dc:creator><![CDATA[JossBoss]]></dc:creator><pubDate>Sun, 27 Aug 2006 11:27:59 GMT</pubDate></item><item><title><![CDATA[Reply to Funktionen mit Zeiger als Rückgabewert on Sun, 27 Aug 2006 11:33:28 GMT]]></title><description><![CDATA[<p>Ok, so gesehn ja. Eion integer ist eine Variable die eine Zahl enthält.<br />
Trotzdem sag ich integer ist eine Zahl.<br />
Ansonsten schliess ich mich Thomas (: an, ich versteh nicht was du meinst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1125286</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1125286</guid><dc:creator><![CDATA[THX 1138]]></dc:creator><pubDate>Sun, 27 Aug 2006 11:33:28 GMT</pubDate></item><item><title><![CDATA[Reply to Funktionen mit Zeiger als Rückgabewert on Sun, 27 Aug 2006 11:43:27 GMT]]></title><description><![CDATA[<p>wenn du den vorletzten post von mir meinst, will ich kurz gesagt einfach nur sagen, dass dei funktion die so deklariert ist, einen zeiger zurückzugeben, eigentlich nur adresse einer variablen zurückliefert.</p>
<p>das ist ja so richtig oder?</p>
<p>thx &amp;mfg!!! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f576.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--sunglasses"
      title=":sunglasses:"
      alt="🕶"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1125290</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1125290</guid><dc:creator><![CDATA[JossBoss]]></dc:creator><pubDate>Sun, 27 Aug 2006 11:43:27 GMT</pubDate></item><item><title><![CDATA[Reply to Funktionen mit Zeiger als Rückgabewert on Sun, 27 Aug 2006 11:53:06 GMT]]></title><description><![CDATA[<p>Eine Funktion die so deklariert ist gibt einen Zeiger auf ein Integer (oder mehrere hintereinanderliegender Integer) zurück - und das _ist_ die Adresse eines Integer (oder mehrerer)...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1125298</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1125298</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Sun, 27 Aug 2006 11:53:06 GMT</pubDate></item><item><title><![CDATA[Reply to Funktionen mit Zeiger als Rückgabewert on Sun, 27 Aug 2006 11:53:41 GMT]]></title><description><![CDATA[<p>Die Funktion liefert eine Adresse zurück, die Du in einer Pointer Variablen speichern kannst.</p>
<pre><code class="language-cpp">int* getAdress( int value )
{
    return &amp;value;
}
int* pointer;
pointer = getValue( 17 );
</code></pre>
<p>Oder du gibst die Zahl zurück und weist sie dem Pointer zu</p>
<pre><code class="language-cpp">int getValue( int value )
{
    return value;
}
int* pointer;
*pointer = getValue( 17 );
//oder
pointer = &amp;getValue( 42 );
</code></pre>
<p>Bitte nicht nach dem Sinn des Beispiels fragen</p>
<p>Aber das hier:</p>
<pre><code class="language-cpp">int* foo(int value)
    {
      int arr[2];
      arr[0]=value;
      arr[1]=-value;
      return arr;
    }
</code></pre>
<p>Gibt dir gar nichts, weil arr beim Verlassen des Funktionsblocks zerstört wird.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1125300</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1125300</guid><dc:creator><![CDATA[THX 1138]]></dc:creator><pubDate>Sun, 27 Aug 2006 11:53:41 GMT</pubDate></item></channel></rss>