Guten Tag! Ich möchte mich Informieren im Bezug auf Arrays. Und zwar möchte ich ein Feld mit zwei Dimensionen anlegen! Und das habe ich so gemacht Feld[6][6] jetzt würde ich gerne wissen wie man richtig dem Feld Werte zuweisen kann und desweiteren möchte ich gerne wissen wie ich auf eine komplette Zeile mit der Variable Feld zugreifen kann? Danke für Ihre hilfe!
1 | int Feld[6][6]; |
2 | |
3 | int i; |
4 | int j; |
5 | |
6 | for (i = 0; i < 6; i++) |
7 | {
|
8 | for (j = 0; j < 6; j++) |
9 | {
|
10 | Feld[i][j] = i * j; |
11 | }
|
12 | }
|
Ich möchte die Variable feld einer Funktion übergegen und in dieser Funktion auf komplette Zeilen zugreifen. Z.B. schreibe Zeile1 von feld schreibe Zeile2 von Feld ... so in etwa nach diesem Schema
Raten wir mal etwas...
1 | void test(int* rowP) { |
2 | for (int col = 0; col < n; col++) { |
3 | rowP[col] = 12345; |
4 | }
|
5 | }
|
6 | |
7 | int Feld[ZEILEN][SPALTEN]; |
8 | test(Feld[1]); |
9 | |
10 | // was nicht geht ist z.B. Feld[1] = Feld[2], um eine Zeile zu kopieren
|
11 | // dies geht entweder elementweise oder per memcpy
|
12 | Feld[1][0] = Feld[2][0]; Feld[1][1] = Feld[2][1]; |
13 | memcpy(Feld[1], Feld[2], sizeof(int) * SPALTEN); |
14 | |
15 | // soll die Funktion test auf das gesamte Array zugreifen
|
16 | // gehen folgende Varianten
|
17 | void test2(int param[ZEILEN][SPALTEN]) { |
18 | }
|
19 | |
20 | void test3(int param[][SPALTEN]) { |
21 | }
|
22 | |
23 | void test4(int *param[SPALTEN]) { |
24 | }
|
Beispiel: <c> #include <string.h> int main(void) { char Feld[6][6]; memset(Feld,0,sizeof(Feld)); //Feld mit Nullen initialisieren int i; int j; for (i = 0; i < 6; i++) { for (j = 0; j < 6; j++) { Feld[i][j] = i * j; } } memcpy(Feld[0],"ABCDE",5); //kopiert ABCDE in Zeile 0 return 0; } </c>
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.