Problem bei For-Next Schleife

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

the FR3AK

Betreff: Problem bei For-Next Schleife

BeitragFr, Aug 22, 2008 21:41
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich habe in meinem Code eine For-Next Schleife, wenn ich das Programm Kompilieren will kommt immer der Fehler: "Index Variable must be integer or real"

So sieht die Schleife aus:

Code: [AUSKLAPPEN]

For z = 1 To WATERSIZE
   For X = 1 To WATERSIZE
         AddVertex( WaterSurf, X*GRIDSIZE#, INITIALHEIGHT#, Z*GRIDSIZE# )
   Next
Next


Der Debugger markiert dann die erste Zeile der Schleife...die Variablen Z und Watersize sind als integer Werte festgelegt...

kann mir vielleicht jemand verraten was daran falsch ist?

mfg

ozzi789

BeitragFr, Aug 22, 2008 22:24
Antworten mit Zitat
Benutzer-Profile anzeigen
Wie hast du WATERSIZE deklariert ?
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5

Mr.Keks

BeitragFr, Aug 22, 2008 22:28
Antworten mit Zitat
Benutzer-Profile anzeigen
sicher, dass du z nicht irgendwo früher an ner anderen stelle im code als was anderes verwendet hast?
MrKeks.net

Noobody

BeitragFr, Aug 22, 2008 23:24
Antworten mit Zitat
Benutzer-Profile anzeigen
Also, an der Schleife selbst kanns nicht liegen, da das ein Stück eines früheren Wellenprogramms von mir ist, welches noch tadellos kompiliert wurde Wink

Dieser Fehler tritt normalerweise dann auf, wenn man versucht, eine Variable, die vorher als Typeinstanz deklariert wurde, als Schleifenvariable zu verwenden - in diesem Falle vermutlich das Z.
Dann musst du wohl sonst im Code rumschauen, ob du entweder in der gleichen Funktion oder global eine Typevariable namens Z erstellt hast, was wohl die Ursache deines Problems ist.
Man is the best computer we can put aboard a spacecraft ... and the only one that can be mass produced with unskilled labor. -- Wernher von Braun

the FR3AK

BeitragSa, Aug 23, 2008 18:09
Antworten mit Zitat
Benutzer-Profile anzeigen
Ja das ist von deinem Wellenprogramm:D

Ich habe es auch schon mit anderen Variablen versucht aber irgendwie will es nicht funktionieren...
Und ja ich verwende es während ich einen neuen Typeeintrag erstelle wozu ich das Wassermesh was mit hilfe deines Wellendingsdas erstellt wird in einen Type eintrag speichere...

Noobody

BeitragSa, Aug 23, 2008 18:27
Antworten mit Zitat
Benutzer-Profile anzeigen
Es sollte eigentlich funktionieren, wenn du keine der Schleifenvariablen vorher als Typevariablen deklariert hast.
Das kann entweder lokal in der Funktion selbst sein oder global irgendwo.
Dann genügt es, wenn du die Variablen umbenennst - wenn es nicht funktionieren will, dann hast du wohl noch nicht bei allen Zugriffen auf die Variablen den Namen umgeändert.
Wenn es immer noch nicht funktioniert, kannst du ja notfalls den Code posten - aber normalerweise sind solche Fehler schnell gefunden.
Man is the best computer we can put aboard a spacecraft ... and the only one that can be mass produced with unskilled labor. -- Wernher von Braun

the FR3AK

BeitragSo, Aug 24, 2008 23:55
Antworten mit Zitat
Benutzer-Profile anzeigen
Alles klar hat sich erledigt... die For Next Schleife die in der Schleife war, wo der Fehler angezeigt wurde, hatte eine Schon belegte Variable aber irgendwie hat der Debugger immer die Obere Schleife als "Falsch" bezeichnet...
 

Dreamora

BeitragSo, Aug 24, 2008 23:57
Antworten mit Zitat
Benutzer-Profile anzeigen
der debugger ist tendentiell immer zu hoch.
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group