Was bedeutet...
-
Hallo, was bedeutet folgende Zeile:
for(i=0;i<dropno;i++)y[i]=(int)(i*getmaxy()/dropno);
vor allem das:
y[i]=(int)(i*getmaxy()/dropno);
y ist ja soweit ich weiss ein array aber dann diese 2 klammern dahinter
-
Noob
-
Die Berechnung innerhalb der zweiten Klammer wird durchgeführt und das Ergebnis wird in einen int umgewandelt.
-
Hi!
for(i=0;i<dropno;i++)y[i]=(int)(i*getmaxy()/dropno);
Schleife sollte sich selbst erklären.
y[i]=(int)(i*getmaxy()/dropno);
Hier wird Zähler mit dem Rückgabewert von getmaxy() mutlipliziert und durch durch irgendeine Größe dropno dividiert. Dies wird nach integer Konvertiert und dem der Position i im Array y zugewiesen.
Warum das konvertiert wird kann ich mir nicht ganz erklären, aber vermutlich ist in dem Ausdruck nicht alles integer.
Code-Hacker
-
Damit werden anscheinend Positionen berechnet, abhängig davon wieviele Elemente in der "Zeile" Platz haben sollen.
-
OK, danke.
Also die erste Klammer bedeutet, dass in int konvertiert wird.
i und dropno wurden vorher als int festgelegt. Muß (int) dann wegen getmaxy() da stehen oder kann man es auch weglassen?
-
Da getmaxy() (aus graphic.h vermute ich) auch eine Ganzzahl zurückliefern sollte (wahrscheinlich int), kannst du es auch weglassen.