<?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 als Funktionsparameter]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich möchte einer Funktion ein Array als Zeiger zuweisen. Das sieht bei mir so aus:</p>
<pre><code class="language-cpp">bool Lösungssudoku::widerspruch(bool probeSudokuMöglichkeiten[9][9][9]) {
	int z;
	for (int i = 0; i &lt; 9; ++i) {
		for (int j = 0; j &lt; 9; ++j) {
			z = 0;
			for (int l = 0; l &lt; 9; ++l) {
				if (!probeSudokuMöglichkeiten[i][j][l]) {
					z++;
				}
			}
			if (z == 9) {
				return true;
			}
		}
	}
	return false;
}
</code></pre>
<p>mit Aufruf</p>
<pre><code class="language-cpp">if (widerspruch(probeSudokuMöglichkeiten)) {
}
</code></pre>
<pre><code class="language-cpp">probeSudokuMöglichkeiten
</code></pre>
<p>ist vor der Übergabe ein 9x9x9 Array mit bool-Werten.<br />
Wenn ich nun einen Haltepunkt in die Funktion 'widerspruch' setze, und dann beim Debuggen mir den Inhalt des Arrays anschaue, zeigt mir Visual Studio nur noch ein 9x9 Array mit bool-Werten an. Mache ich einen Fehler mit den Übergabeparamtern?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/302111/array-als-funktionsparameter</link><generator>RSS for Node</generator><lastBuildDate>Tue, 11 Aug 2026 14:05:59 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/302111.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 11 Apr 2012 14:37:14 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Array als Funktionsparameter on Wed, 11 Apr 2012 14:37:14 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich möchte einer Funktion ein Array als Zeiger zuweisen. Das sieht bei mir so aus:</p>
<pre><code class="language-cpp">bool Lösungssudoku::widerspruch(bool probeSudokuMöglichkeiten[9][9][9]) {
	int z;
	for (int i = 0; i &lt; 9; ++i) {
		for (int j = 0; j &lt; 9; ++j) {
			z = 0;
			for (int l = 0; l &lt; 9; ++l) {
				if (!probeSudokuMöglichkeiten[i][j][l]) {
					z++;
				}
			}
			if (z == 9) {
				return true;
			}
		}
	}
	return false;
}
</code></pre>
<p>mit Aufruf</p>
<pre><code class="language-cpp">if (widerspruch(probeSudokuMöglichkeiten)) {
}
</code></pre>
<pre><code class="language-cpp">probeSudokuMöglichkeiten
</code></pre>
<p>ist vor der Übergabe ein 9x9x9 Array mit bool-Werten.<br />
Wenn ich nun einen Haltepunkt in die Funktion 'widerspruch' setze, und dann beim Debuggen mir den Inhalt des Arrays anschaue, zeigt mir Visual Studio nur noch ein 9x9 Array mit bool-Werten an. Mache ich einen Fehler mit den Übergabeparamtern?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2200825</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2200825</guid><dc:creator><![CDATA[sceche]]></dc:creator><pubDate>Wed, 11 Apr 2012 14:37:14 GMT</pubDate></item><item><title><![CDATA[Reply to Array als Funktionsparameter on Wed, 11 Apr 2012 14:45:12 GMT]]></title><description><![CDATA[<p>Der äußerste Arrayindex (also der ganz vorne) ist bei Funktionsparametern Wumpe. Da wird sowieso ein Zeiger draus gemacht. Hier ist <code>probeSudokuMöglichkeiten</code> folglich ein Zeiger auf ein 9x9 bool-Array. Und das zeigt dir dein Debugger an.</p>
<p>Da du offensichtlich Anfänger bist und mit Arrays nicht gut zurecht zu kommen scheinst (ist ja nicht deine erste Frage hier): Bleib doch einfach bei gewrappten Arrays, wie std::array oder einer eigenen Sudokufeldklasse (wurde dir ja auch schon gezeigt), die haben dann die gleichen Eigenschaften wie alle anderen Datentypen und keine Sonderregeln wie rohe Arrays.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2200827</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2200827</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Wed, 11 Apr 2012 14:45:12 GMT</pubDate></item></channel></rss>