<?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[array von einer Funktion zurückgeben nicht möglich???]]></title><description><![CDATA[<p>Hallo, ich habe ein kleines Problem mit einem kleinen Programm...ich versuche über eine Funktion einen array urück zu geben..leider funktioniert dieses aber nicht...kann auch sein das es am dem prog liegt mit dem ich arbeite (da es von der syntax her alles stimmt).&quot;arbeite mit C++Builder 5&quot;...</p>
<pre><code class="language-cpp">double *ermittleMinMaxRaeume(double*, double);
  double ermittleGesammtFlaesche(double*);
   double ermittleArithMW(double*, double);

void __fastcall TForm1::btn1Click(TObject *Sender)
{
  double raum[9]={8.0, 55.0, 45.0, 67.0, 33.0, 48.0, 52.0, 78.0, 49.0};
   double mingroesse=48;
    double minmax[2], flaescheges, arithMW;

     minmax[2]=*ermittleMinMaxRaeume(raum, mingroesse);
      flaescheges=ermittleGesammtFlaesche(raum);
       arithMW=ermittleArithMW(raum, flaescheges);

           edt_min-&gt;Text=minmax[0];
          edt_max-&gt;Text=minmax[1];
         edt_flaescheges-&gt;Text=flaescheges;
        edt_arithMW-&gt;Text=arithMW;

}
//---------------------------------------------------------------------------
  double *ermittleMinMaxRaeume(double *raum, double mingroesse){
           int i=1, min=0, max=0;
            double minmax[2];

         while(i&lt;=raum[0]){
                  if (raum[i]&gt;=mingroesse){
                     minmax[1]=max+1;
                  }
                     else {
                          minmax[0]=min+1;
                     }
           i++;
         }
     return minmax;
  }
       double ermittleGesammtFlaesche(double *raum){
          int i=1;
           double flaescheges=0;

             while(i&lt;=raum[0]){
                     flaescheges=flaescheges+raum[i];
                     i++;
             }
         return flaescheges;
       }

                double ermittleArithMW(double *raum, double flaescheges){
                    double arithMW=0;

                       arithMW = flaescheges/raum[0];
                     return arithMW;
                }
</code></pre>
<p>Vieleischt seht Ihr ja einen Fehler...Danke im voraus</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/143245/array-von-einer-funktion-zurückgeben-nicht-möglich</link><generator>RSS for Node</generator><lastBuildDate>Wed, 02 Sep 2026 16:20:48 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/143245.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 06 Apr 2006 14:58:48 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to array von einer Funktion zurückgeben nicht möglich??? on Thu, 06 Apr 2006 14:58:48 GMT]]></title><description><![CDATA[<p>Hallo, ich habe ein kleines Problem mit einem kleinen Programm...ich versuche über eine Funktion einen array urück zu geben..leider funktioniert dieses aber nicht...kann auch sein das es am dem prog liegt mit dem ich arbeite (da es von der syntax her alles stimmt).&quot;arbeite mit C++Builder 5&quot;...</p>
<pre><code class="language-cpp">double *ermittleMinMaxRaeume(double*, double);
  double ermittleGesammtFlaesche(double*);
   double ermittleArithMW(double*, double);

void __fastcall TForm1::btn1Click(TObject *Sender)
{
  double raum[9]={8.0, 55.0, 45.0, 67.0, 33.0, 48.0, 52.0, 78.0, 49.0};
   double mingroesse=48;
    double minmax[2], flaescheges, arithMW;

     minmax[2]=*ermittleMinMaxRaeume(raum, mingroesse);
      flaescheges=ermittleGesammtFlaesche(raum);
       arithMW=ermittleArithMW(raum, flaescheges);

           edt_min-&gt;Text=minmax[0];
          edt_max-&gt;Text=minmax[1];
         edt_flaescheges-&gt;Text=flaescheges;
        edt_arithMW-&gt;Text=arithMW;

}
//---------------------------------------------------------------------------
  double *ermittleMinMaxRaeume(double *raum, double mingroesse){
           int i=1, min=0, max=0;
            double minmax[2];

         while(i&lt;=raum[0]){
                  if (raum[i]&gt;=mingroesse){
                     minmax[1]=max+1;
                  }
                     else {
                          minmax[0]=min+1;
                     }
           i++;
         }
     return minmax;
  }
       double ermittleGesammtFlaesche(double *raum){
          int i=1;
           double flaescheges=0;

             while(i&lt;=raum[0]){
                     flaescheges=flaescheges+raum[i];
                     i++;
             }
         return flaescheges;
       }

                double ermittleArithMW(double *raum, double flaescheges){
                    double arithMW=0;

                       arithMW = flaescheges/raum[0];
                     return arithMW;
                }
</code></pre>
<p>Vieleischt seht Ihr ja einen Fehler...Danke im voraus</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1032024</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1032024</guid><dc:creator><![CDATA[faris]]></dc:creator><pubDate>Thu, 06 Apr 2006 14:58:48 GMT</pubDate></item><item><title><![CDATA[Reply to array von einer Funktion zurückgeben nicht möglich??? on Thu, 06 Apr 2006 15:04:09 GMT]]></title><description><![CDATA[<p>Du gibst einen Zeiger auf ein temporäres Array zurück, welches am Ende der Funktion schon nicht mehr existiert.</p>
<p>Und, sagmal, willst Du mit Deinen Einrückungen Zickzackwellen zeichnen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1032027</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1032027</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Thu, 06 Apr 2006 15:04:09 GMT</pubDate></item><item><title><![CDATA[Reply to array von einer Funktion zurückgeben nicht möglich??? on Thu, 06 Apr 2006 15:05:17 GMT]]></title><description><![CDATA[<p>arrays können nicht zurück gegeben werden. dein array double minmax[2]; ist nur lokal gültig und wird zerstört, sobald die methode abgearbeitet wurde.</p>
<p>allerdings können pointer zurückgegeben werden. änder</p>
<pre><code class="language-cpp">double minmax[2];
</code></pre>
<p>in</p>
<pre><code class="language-cpp">double *minmax = new double[2];
</code></pre>
<p>und es funktioniert.</p>
<p>und nicht vergessen, den speicher mittels delete später wieder freizugeben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1032029</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1032029</guid><dc:creator><![CDATA[thordk]]></dc:creator><pubDate>Thu, 06 Apr 2006 15:05:17 GMT</pubDate></item><item><title><![CDATA[Reply to array von einer Funktion zurückgeben nicht möglich??? on Thu, 06 Apr 2006 15:21:29 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/10648">@LordJaxom</a>:</p>
<pre><code class="language-cpp">ich versuche;
    mit den zickzack einrückungen;
      die übersicht etwas einfacher zu gestallten;
    finde ich sehr effektiv wenn man enfängt;
  if() else if () versschachtelungen zu erstellen;
</code></pre>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/9660">@thordk</a>: <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1032038</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1032038</guid><dc:creator><![CDATA[faris]]></dc:creator><pubDate>Thu, 06 Apr 2006 15:21:29 GMT</pubDate></item><item><title><![CDATA[Reply to array von einer Funktion zurückgeben nicht möglich??? on Thu, 06 Apr 2006 15:46:30 GMT]]></title><description><![CDATA[<p>Du verschachtelst aber bei jeder Zeile anders, nicht nur in Blöcken... Findest Du das übersichtlich? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<p>EDIT:<br />
Und Deine Rückfrage an thordk kann man bestenfalls als unzureichend beschreiben. Verstehst Du die Sprache die er spricht nicht? <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="😉"
    /> Oder was möchtest Du ihn fragen?</p>
<p>Ansonsten bleibt das gesagte:<br />
Wenn Du innerhalb eines Blocks eine Variable anlegst, ist diese am Ende des Blocks wieder weg (auch wenn Du einen Zeiger auf den Speicherbereich, wo die mal war, irgendwo speicherst).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1032056</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1032056</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Thu, 06 Apr 2006 15:46:30 GMT</pubDate></item><item><title><![CDATA[Reply to array von einer Funktion zurückgeben nicht möglich??? on Thu, 06 Apr 2006 16:01:39 GMT]]></title><description><![CDATA[<p>in dem fall von dem o.g. scipt bring das natürlich nichts mit dem zickzack....<br />
kleines beisp:</p>
<pre><code class="language-cpp">else
       {
         while (k&lt;i)
           {
             if (zeichenkette1[k]!=zeichenkette2[k])
               {
                 a=3;
                 break;
               }
                else if ((zeichenkette1[0]&lt;'A') || (zeichenkette1[0]&gt;='Z'))
                   {
                     a=4;
                     break;
                   }
                  else if ((zeichenkette2[0]&lt;='A') || (zeichenkette2[0]&gt;='Z'))
                     {
                       a=4;
                       break;
                     }
                       else if (k!=0)
                         {
                           if ((zeichenkette1[k]&lt;'a') || (zeichenkette1[k]&gt;='z'))
                             {
                               a=4;
                               break;
                             }
                               else if (((zeichenkette2[k]&lt;'a') || (zeichenkette2[k]&gt;='z')))
                                 {
                                   a=4;
                                   break;
                                 }
                         }
             k++;
           }
       }
</code></pre>
<p>&lt;--- zu jeder öffnenden klammer auch direkt unten drunter die schliesende...übersichlichter halt. und so sieht man es viel schneller...find ich halt besser als alles von der ersten spalte an anzufangen...</p>
<p>das ist mir auch schon klar, das es unzureihent ist ein smily hinzusetzten...was ich nicht verdtanden habe ich an welcher stelle ich den pointer übergeben soll???da es ja in meinem fall 2 werte sind die übergeben werden sollen...sorry wenn ich nicht alles sofort verstehe...fange erst an mit c++ zu arbeiten</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1032058</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1032058</guid><dc:creator><![CDATA[faris]]></dc:creator><pubDate>Thu, 06 Apr 2006 16:01:39 GMT</pubDate></item><item><title><![CDATA[Reply to array von einer Funktion zurückgeben nicht möglich??? on Thu, 06 Apr 2006 16:03:44 GMT]]></title><description><![CDATA[<p>einrückung soll den programmfluß nachempfinden. deine else-if statements sind alle gleichberechtigt, daher sollten sie auch alle dieselbe einrückung besitzen.</p>
<pre><code class="language-cpp">if()
{
	if()
	else()
	{
		if()
		{
			if()
			else()
		}
	}
	if()
	else()
}
else()
if()
else()
</code></pre>
<p>und zur ursprünglichen frage: vielleicht solltest du dir mal den unterschied zwischen arrays und pointern klar machen. steht eigentlich in jedem halbwegs brauchbarem tutorial.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1032060</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1032060</guid><dc:creator><![CDATA[thordk]]></dc:creator><pubDate>Thu, 06 Apr 2006 16:03:44 GMT</pubDate></item><item><title><![CDATA[Reply to array von einer Funktion zurückgeben nicht möglich??? on Thu, 06 Apr 2006 17:31:42 GMT]]></title><description><![CDATA[<p>...und spätestens in der vierten Ebene sollte man sich Gedanken über Refakturierung machen <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/1032101</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1032101</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Thu, 06 Apr 2006 17:31:42 GMT</pubDate></item><item><title><![CDATA[Reply to array von einer Funktion zurückgeben nicht möglich??? on Wed, 19 Apr 2006 09:21:27 GMT]]></title><description><![CDATA[<p>Hallo nochmal....der unterschied zwischen einem pointe und einem arry ist mir schon bewusst. ich wolte auch nur fragen ob es eine möglichkeit gibt einen arry zurück zu geben, da es für die programierung einfacher wäre (meine meinung)</p>
<p>wie es aussieht ist das leider nicht möglich.</p>
<p>ps. bei mir funktioniert das prog auch nicht, wenn ich einen pointer zurückgebe.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1040372</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1040372</guid><dc:creator><![CDATA[faris]]></dc:creator><pubDate>Wed, 19 Apr 2006 09:21:27 GMT</pubDate></item><item><title><![CDATA[Reply to array von einer Funktion zurückgeben nicht möglich??? on Wed, 19 Apr 2006 09:23:48 GMT]]></title><description><![CDATA[<p>Direkt geht das nicht, aber du könntest dein Array in eine struct kapseln und diese zurückgeben.</p>
<p>(oder du verwendest gleich die Möglichkeiten von C++ und gibst einen vector&lt;&gt; zurück)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1040377</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1040377</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Wed, 19 Apr 2006 09:23:48 GMT</pubDate></item><item><title><![CDATA[Reply to array von einer Funktion zurückgeben nicht möglich??? on Wed, 19 Apr 2006 16:03:04 GMT]]></title><description><![CDATA[<p>Die Einrückung ist ja sehr vorteilhaft...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1040702</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1040702</guid><dc:creator><![CDATA[tobZel]]></dc:creator><pubDate>Wed, 19 Apr 2006 16:03:04 GMT</pubDate></item></channel></rss>