Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Muttonhead

Anmeldungsdatum: 26.08.2008 Beiträge: 566 Wohnort: Jüterbog
|
Verfasst am: 25.06.2010, 20:08 Titel: keine Fehlermeldung bei falschem Arrayzugriff |
|
|
Hallo werte Gemeinde, ich hab folgendes kleine Problem:
Code: | dim as integer array(1 to 10)
dim as integer target=0
if target=0 or array(target)=25 then' ist der Zugriff auf array(target) also array(0) kein Fehler?
'mach dieses wenn target=0 oder der wert im array=25
else
'mach was anderes
end if
sleep
end |
Wieso gibt es eigentlich keine Fehlermeldung wenn die Index-Variable (target) ausserhalb des Indexereiches des Arrays liegt und ein Zugriff
auf array(target) bei target=0 ja eigentlich nicht zulässig wäre?
Oder ist es tatsächlich kein Problem beide Bedingungen so zu verknüpfen?
ps: oha,ich sehe grad, ein
ist problemlos möglich!!!!
Also muss ich das anders lösen
mfg Mutton |
|
Nach oben |
|
 |
dkl FreeBASIC-Compiler-Entwickler
Anmeldungsdatum: 25.04.2010 Beiträge: 14 Wohnort: Germany
|
Verfasst am: 25.06.2010, 20:54 Titel: |
|
|
Hallo,
FreeBASIC kann das entdecken, dazu muss man dann "-exx" benutzen, z.B. so:
Das nennt sich "array bounds checking". -exx schaltet noch eine Reihe anderer Funktionen ein. Weil der Code dann (mit den ganzen extra Abfragen) natürlich langsamer wird, ist das hauptsächlich zum Debuggen geeignet. Im Prinzip sollte man aber selbst drauf achten, dass alles passt. FB ist ja kein Interpreter. |
|
Nach oben |
|
 |
Muttonhead

Anmeldungsdatum: 26.08.2008 Beiträge: 566 Wohnort: Jüterbog
|
Verfasst am: 25.06.2010, 21:04 Titel: |
|
|
japp danke dkl.
Hab mir darüber noch nie Gedanken gemacht.
Mir kam das jetzt nur etwas merkwürdig vor, bei der Art der Bedingungs-Verknüpfung im if..then Block.
Wirds wohl noch ne Verschachtelung mehr werden
Mutton |
|
Nach oben |
|
 |
Cherry
Anmeldungsdatum: 20.06.2007 Beiträge: 249
|
Verfasst am: 27.06.2010, 13:11 Titel: |
|
|
Nein, du kannst OrElse statt Or verwenden. Bei OrElse wird, wenn der erste Ausdruck WAHR ist, der zweite gar nicht mehr beachtet. |
|
Nach oben |
|
 |
Muttonhead

Anmeldungsdatum: 26.08.2008 Beiträge: 566 Wohnort: Jüterbog
|
Verfasst am: 27.06.2010, 20:36 Titel: |
|
|
OrElse.. ist gut... sogar sehr gut, genau das was ich brauche.
Ab und zu sollte man sich mal mit dem vollen Befehls- und Funktionsumfang eine Sprache auseinandersetzen
mit Dank an Cherry
Mutton |
|
Nach oben |
|
 |
|