array - invalid types `int[int]' for array subscript



  • Ich hab folgenden Code:

    int main()
    {
     srand(time(0));
    
     int i;
     int eingabearray[6];
     int randomarray[6];
     int randomzahl=rand()%9+1;
     int punkte=0;
    
     randomarray[6]=(randomzahl,randomzahl,randomzahl,randomzahl,randomzahl,randomzahl);
    
     cout<<"Ratten sie folgende 7 Zahlen, Werte zwischen 1 und 9!"<<endl;
     for (i=0;i<7;i=i+1)
     {
      cout<<i+1<<". Zahl:"<<endl;
      cin>>eingabearray[i];
    
      if (eingabearray[i]==randomzahl[i])
         {
         punkte=punkte+1;
         }      
     }
     cout<<"Sie haben:"<<punkte<<"erreicht. Glückwunsch"<<endl;
     getch();
    }
    

    Doch nun bleibt er bei der if Abfrage hängen mit dem Argument: invalid types `int[int]' for array subscript
    Nur weiß ich nicht wie ich den Fehler beheben kann, kann mir ja jemand weiter helfen?



  • als erstes sehe ich, dass du den bereich des array überschreitest, aber das dürfte eingentlich nur zur laufzeit und im debugmodus zum absturz führen mit segementation fault.

    eingabearray[i]==randomzahl[i]

    randomzahl ist kein array, du muss randomarray[i] statt dessen nehmen,m da hat du dein array



  • randomarray[6]=(randomzahl,randomzahl,randomzahl,randomzahl,randomzahl);
    

    Man beginnt immer bei 0 zu zählen an 😉
    Und der "6"-er bedeutet, wieviele Werte drínnen stehen.

    So gehts:

    int arr[5] = { 0, 1, 2, 3, 4 };
    

    Daniel



  • im array randomzahl steht überall das gleiche drin



  • Cr3at0r schrieb:

    randomarray[6]=(randomzahl,randomzahl,randomzahl,randomzahl,randomzahl,randomzahl);

    Sowas wirst du nur schwer durch den Compiler bekommen - Initialisierungslisten kannst du nur zur Initialisierung einer Variable verwenden, nicht für spätere Zuweisungen. Wenn du das Array nachträglich füllen willst, mußt du auf jedes Element einzeln zugreifen.



  • "Ratten sie" 😃 naja ich bin auch nich gut in rechtschreibung 🙄



  • Das jetzt Rechtschreibfehler drinne waren, ist ja nicht weiter schlimm, da es ja auch nur der Ausgabetext war, das mit der Variablennamen war doof. *G*

    Hab mal alle Fehler ausgmeerzt und geschaut was noch falsch sein könnte und jetzt geht es auch. 🙂 Vielen Dank an euch.!


Anmelden zum Antworten