aufzurufenden arraynamen ändern

Belinus

Grünschnabel
Ich habe 4 Arrays (int Spieler1Var, ...) und ich muss nacheinander alle arrays in einer if Bedingung überprüfen. Ist es möglich das ich zum
Beispiel in einer for schleife eine if schleife habe und in dieser dann vier Arrays nacheinander vergleichen kann? Unten mein Jetziger Code:

C++:
TesterP1 = true;                                   
TesterP2 = true;
TesterP3 = true;
TesterP4 = true;
 
for (int y = 0; y <= 7; y++)
 {
     if (PflichtenBen[y][x] == 1)
     {
         if (SpielerVar1[y] != 1)
         {
             TesterP1 = false;
         }
     }
    
     if (PflichtenBen[y][x] == 2)
     {
         if (SpielerVar1[y] != 2)
         {
             TesterP1 = false;
         }
     }
 }

 for (int y = 8; y <= 15; y++)   Ab hier wird es interessant
 {
     if (PflichtenBen[y][x] == 1)
     {
         if (SpielerVar2[y] != 1)
         {
             TesterP2 = false;
         }
     }

     if (PflichtenBen[y][x] == 2)
     {
         if (SpielerVar2[y] != 2)
         {
             TesterP2 = false;
         }
     }

     if (PflichtenBen[y][x] == 1)
     {
         if (SpielerVar3[y] != 1)
         {
             TesterP3 = false;
         }
     }

     if (PflichtenBen[y][x] == 2)
     {
         if (SpielerVar3[y] != 2)
         {
             TesterP3 = false;
         }
     }

     if (PflichtenBen[y][x] == 1)
     {
         if (SpielerVar4[y] != 1)
         {
             TesterP4 = false;
         }
     }

     if (PflichtenBen[y][x] == 2)
     {
         if (SpielerVar4[y] != 2)
         {
             TesterP4 = false;
         }
     }

Vielen Dank für eure Zeit
 
Zuletzt bearbeitet von einem Moderator:
Lösung
Nein, Du brauchst keinen String, nur einfach den Variablennamen notieren:
Code:
int checkit(int[] spielerVar) {
    /* hier steht jetzt das aktuelle Spielerarray unter spielerVar zur Verfuegung */
  
    /* das Ergebnis der Pruefungen als Rueckgabewert uebergeben */
    return xyz;
}

/* Und dann der Aufruf: */
int result = checkit(SpielerVar2);
if (result) {
  
}

BTW: C(++) ist bei mir eine Weile her, kann gut sein, dass ich nicht alles auf Punkt und Komma getroffen habe.
Das ist eine super Idee, Danke.
Aber wie kann ich einen Arraynamen als Parameter übergeben? Mit einer String?
Bin noch nicht so erfahren..
LG
 
Nein, Du brauchst keinen String, nur einfach den Variablennamen notieren:
Code:
int checkit(int[] spielerVar) {
    /* hier steht jetzt das aktuelle Spielerarray unter spielerVar zur Verfuegung */
  
    /* das Ergebnis der Pruefungen als Rueckgabewert uebergeben */
    return xyz;
}

/* Und dann der Aufruf: */
int result = checkit(SpielerVar2);
if (result) {
  
}

BTW: C(++) ist bei mir eine Weile her, kann gut sein, dass ich nicht alles auf Punkt und Komma getroffen habe.
 
Zuletzt bearbeitet:
Lösung
Zurück