Folgendes ist mir aufgefallen bzw. unklar:
- Was meldet der Compiler bzw. was funktioniert nicht?
- c.x, c.y und c.z sind offenbar nicht vom Typ int: Der cast in den Zeilen 13-15 sollte auf jeden Fall raus, denn casts sollte man nicht verwenden, um Compiler-Fehler oder Warnungen zu umgehen.
- In der Parameterliste hat grid_delta den Typ float, stimmt das?
- Die if-Kaskade sollte durch eine passende UND / ODER - Verküpfung aufgelöst werden
- Aus Gründen der Lesbarkeit und der Eindeutigkeit sollten Operatoren von Operanden durch ein Leerzeichen getrennt werden (u.a. "c=p-ref")
- In der if-Kaskade sind nicht alle Möglichkeiten behandelt: Was soll z.Bsp. passieren, wenn xxx>=nx ist?
Gruß Dirk