<?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[Problem mit Array]]></title><description><![CDATA[<p>Hallo ich habe ein Problem mit einem mehrdimensionales Array, welches ich an eine Funktion übergeben, wo es dann geändert wird. Nach der Enderung soll das Array aber mit den Neuen Daten in der Funktion verfügbar sein, wo ich die Funktion aufgerufen die das Array ändert. Ich hab im Forum schon einiges gelesen zum Thema struct und verctor, aber a die Hälfte sagt mir gar nichts und b gibt es doch sicher einen einfachen Weg den ich nicht kenne.<br />
Ich habe von C/C++ keine Ahnung, es ist ein Schulproject und dementschprechend sind dann auch meine Kenntnisse in C/C++.</p>
<pre><code class="language-cpp">#include &lt;iostream.h&gt;
#include &lt;conio.h&gt;

int anzeigen(int i_sitzplaetze[10][20][2], int i_mode = 0){
  for(int i=-1; i&lt;10; i++){
    if(i==-1){printf(&quot;         &quot;);}
    else{printf(&quot;Reihe%3i:&quot;,i+1);}
    for(int j=0; j&lt;20; j++){
      if(i==-1){printf(&quot;%3i&quot;,j+1);}
      else{
        if(i_mode)i_sitzplaetze[i][j][0]=0;
        printf(&quot;%3i&quot;,i_sitzplaetze[i][j][0]);
      }
    }
    printf(&quot;\n&quot;);
  }
  return 0;
}

int reservieren(int i_sitzplaetze[10][20][2]){
  int i_reihe=0,i_platz,i_anzahl;
  printf(&quot;Reservierung:\n&quot;);
  printf(&quot;Bitte geben Sie eine Reihe ein: &quot;);
  cin &gt;&gt; i_reihe;
  printf(&quot;\nBitte geben Sie die Anzahl der zu reservierenden Plaetze ein: &quot;);
  cin &gt;&gt; i_anzahl;
  printf(&quot;\nBitte geben Sie den 1. zu reservierenden Platz ein: &quot;);
  cin &gt;&gt; i_platz;
  for(int i=0;i&lt;i_anzahl;i++){
    i_sitzplaetze[i_reihe][i_platz+1][0]=1;
  }
  return i_sitzplaetze;   // hier soll das Array wieder zurück gegeben werden
}

int main(){
  int i_sitzplaetze[10][20][2];

  anzeigen(i_sitzplaetze,1);
  i_sitzplaetze = reservieren(i_sitzplaetze);
  getch();
  return 0;
}
</code></pre>
<p>Kann mir da jemand helfen?</p>
<p>mfG Net_Hans</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/170887/problem-mit-array</link><generator>RSS for Node</generator><lastBuildDate>Thu, 17 Sep 2026 05:41:17 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/170887.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 20 Jan 2007 16:11:55 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Problem mit Array on Sat, 20 Jan 2007 16:11:55 GMT]]></title><description><![CDATA[<p>Hallo ich habe ein Problem mit einem mehrdimensionales Array, welches ich an eine Funktion übergeben, wo es dann geändert wird. Nach der Enderung soll das Array aber mit den Neuen Daten in der Funktion verfügbar sein, wo ich die Funktion aufgerufen die das Array ändert. Ich hab im Forum schon einiges gelesen zum Thema struct und verctor, aber a die Hälfte sagt mir gar nichts und b gibt es doch sicher einen einfachen Weg den ich nicht kenne.<br />
Ich habe von C/C++ keine Ahnung, es ist ein Schulproject und dementschprechend sind dann auch meine Kenntnisse in C/C++.</p>
<pre><code class="language-cpp">#include &lt;iostream.h&gt;
#include &lt;conio.h&gt;

int anzeigen(int i_sitzplaetze[10][20][2], int i_mode = 0){
  for(int i=-1; i&lt;10; i++){
    if(i==-1){printf(&quot;         &quot;);}
    else{printf(&quot;Reihe%3i:&quot;,i+1);}
    for(int j=0; j&lt;20; j++){
      if(i==-1){printf(&quot;%3i&quot;,j+1);}
      else{
        if(i_mode)i_sitzplaetze[i][j][0]=0;
        printf(&quot;%3i&quot;,i_sitzplaetze[i][j][0]);
      }
    }
    printf(&quot;\n&quot;);
  }
  return 0;
}

int reservieren(int i_sitzplaetze[10][20][2]){
  int i_reihe=0,i_platz,i_anzahl;
  printf(&quot;Reservierung:\n&quot;);
  printf(&quot;Bitte geben Sie eine Reihe ein: &quot;);
  cin &gt;&gt; i_reihe;
  printf(&quot;\nBitte geben Sie die Anzahl der zu reservierenden Plaetze ein: &quot;);
  cin &gt;&gt; i_anzahl;
  printf(&quot;\nBitte geben Sie den 1. zu reservierenden Platz ein: &quot;);
  cin &gt;&gt; i_platz;
  for(int i=0;i&lt;i_anzahl;i++){
    i_sitzplaetze[i_reihe][i_platz+1][0]=1;
  }
  return i_sitzplaetze;   // hier soll das Array wieder zurück gegeben werden
}

int main(){
  int i_sitzplaetze[10][20][2];

  anzeigen(i_sitzplaetze,1);
  i_sitzplaetze = reservieren(i_sitzplaetze);
  getch();
  return 0;
}
</code></pre>
<p>Kann mir da jemand helfen?</p>
<p>mfG Net_Hans</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1213261</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1213261</guid><dc:creator><![CDATA[-Net_Hans-]]></dc:creator><pubDate>Sat, 20 Jan 2007 16:11:55 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Array on Sat, 20 Jan 2007 18:15:10 GMT]]></title><description><![CDATA[<p>Hier kannst du nachlesen, wie man arrays an Funktionen übergibt:<br />
<a href="http://de.wikibooks.org/wiki/C-Programmierung:_Arrays_und_Strings" rel="nofollow">http://de.wikibooks.org/wiki/C-Programmierung:_Arrays_und_Strings</a></p>
<pre><code class="language-cpp">void anzeigen(int i_sitzplaetze[][20][2], int i_mode = 0);

void reservieren(int i_sitzplaetze[][20][2]);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1213334</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1213334</guid><dc:creator><![CDATA[Nanuq]]></dc:creator><pubDate>Sat, 20 Jan 2007 18:15:10 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Array on Sat, 20 Jan 2007 18:57:02 GMT]]></title><description><![CDATA[<p>die Übergabe an die Funktion geht ja, nur die Rückgabe nicht, ich kann mein bearbeitetes Array nicht an main zurückgeben. Und ich bräuchte eine Idee für eine Rückgabe</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1213355</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1213355</guid><dc:creator><![CDATA[-Net_Hans-]]></dc:creator><pubDate>Sat, 20 Jan 2007 18:57:02 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Array on Sat, 20 Jan 2007 19:00:35 GMT]]></title><description><![CDATA[<p>-Net_Hans- schrieb:</p>
<blockquote>
<p>die Übergabe an die Funktion geht ja, nur die Rückgabe nicht, ich kann mein bearbeitetes Array nicht an main zurückgeben.</p>
</blockquote>
<p>Arrays kann man nicht zurückgeben. Musst du aber auch gar nicht. Array-Funktionsparameter werden <em>nicht</em> kopiert, sind also automatisch &quot;by reference&quot;.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1213356</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1213356</guid><dc:creator><![CDATA[MFK]]></dc:creator><pubDate>Sat, 20 Jan 2007 19:00:35 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Array on Sat, 20 Jan 2007 19:03:00 GMT]]></title><description><![CDATA[<p>das heißt ich gebe das Array an die Funktion wo ich es dann bearbeite und dann wird automatisch nach der Abarbeitung der Funktion in der alten Funktion mit den aktuellen werten weitergearbeitet?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1213357</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1213357</guid><dc:creator><![CDATA[-Net_Hans-]]></dc:creator><pubDate>Sat, 20 Jan 2007 19:03:00 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Array on Sat, 20 Jan 2007 19:03:40 GMT]]></title><description><![CDATA[<p>Ja.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1213358</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1213358</guid><dc:creator><![CDATA[MFK]]></dc:creator><pubDate>Sat, 20 Jan 2007 19:03:40 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Array on Sat, 20 Jan 2007 19:06:16 GMT]]></title><description><![CDATA[<p>ich habe das jetzt mal versucht, aber ich bekomme in der Ausgabe nach dem Bearbeiten es Arrays das ursprüngliche Array ausgegeben</p>
<pre><code class="language-cpp">int reservieren(int i_sitzplaetze[10][20][2]){
  int i_reihe=0,i_platz,i_anzahl;
  printf(&quot;Reservierung:\n&quot;);
  printf(&quot;Bitte geben Sie eine Reihe ein: &quot;);
  cin &gt;&gt; i_reihe;
  printf(&quot;\nBitte geben Sie die Anzahl der zu reservierenden Plaetze ein: &quot;);
  cin &gt;&gt; i_anzahl;
  printf(&quot;\nBitte geben Sie den 1. zu reservierenden Platz ein: &quot;);
  cin &gt;&gt; i_platz;
  if(ueberpruefung_reihe(i_sitzplaetze, i_reihe, i_platz, i_anzahl)){
    for(int i=0;i&lt;i_anzahl;i++){
      i_sitzplaetze[i_reihe][i_platz+1][0]=1;
    }
  }
  return 0;
}

int main(){
  int i_sitzplaetze[10][20][2];

  anzeigen(i_sitzplaetze,1);
  reservieren(i_sitzplaetze);
  anzeigen(i_sitzplaetze,1);
  getch();
  return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1213360</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1213360</guid><dc:creator><![CDATA[-Net_Hans-]]></dc:creator><pubDate>Sat, 20 Jan 2007 19:06:16 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Array on Sat, 20 Jan 2007 19:14:21 GMT]]></title><description><![CDATA[<p>-Net_Hans- schrieb:</p>
<blockquote>
<p>ich habe das jetzt mal versucht, aber ich bekomme in der Ausgabe nach dem Bearbeiten es Arrays das ursprüngliche Array ausgegeben</p>
</blockquote>
<p>Dann wird der Inhalt des Arrays nicht geändert. Möglicherweise gibt ueberpruefung_reihe false zurück, die Funktion hast du ja nicht gezeigt. Es wäre wohl auch sinnvoll, das Array irgendwo zu initialisieren, sonst steht da irgendwas drin.</p>
<p>Die Schleife in reservieren ist auch merkwürdig. Der Index wird in der Schleife nicht benutzt, du setzt also mehrfach denselben Eintrag auf 1.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1213365</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1213365</guid><dc:creator><![CDATA[MFK]]></dc:creator><pubDate>Sat, 20 Jan 2007 19:14:21 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Array on Sat, 20 Jan 2007 19:18:36 GMT]]></title><description><![CDATA[<p>SORRY, muß mich verbessern, du hattest Recht, ich hatte bei der Funktion anzeigen ein Parameter zu viel. Es geht danke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1213371</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1213371</guid><dc:creator><![CDATA[-Net_Hans-]]></dc:creator><pubDate>Sat, 20 Jan 2007 19:18:36 GMT</pubDate></item></channel></rss>