Seite 1 von 1

ERLEDERITZT :Restore vor erstem read bringt unsinnige Werte

Verfasst: 03.05.2007 20:01
von Captn. Jinguji
Ok, es heisst "REstore", aber dennoch müsste doch möglich sein,
nach z.B. einer Fallunterscheidung - oder eben "plain", wie unten -ein label per

Code: Alles auswählen

restore label 
anzusteuern, ohne dass vor dem restore überhaupt ein ausgeführt werden muss?

Code: Alles auswählen

OpenConsole()
Restore gaga:
For i = 1 To 4
Read a
PrintN(Str(a))
Next
Delay(1000)

gaga:
DataSection 
Data.l 1,2,3,4,6
EndDataSection 
ergibt

4200
2484224
6815744
-402653184

... und zwar zuverlässig....

So GANZ richtig ist das doch nicht, woll ?

Verfasst: 03.05.2007 20:37
von ts-soft
Liegt aber am falschen Code :wink:

Code: Alles auswählen

OpenConsole()
Restore gaga:
For i = 1 To 4
  Read a
  PrintN(Str(a))
Next
Delay(1000)

DataSection
  gaga:
  Data.l 1,2,3,4,6
EndDataSection
Wenn der Label auf eine Datasection zeigt, gehört er selbstverständlich
dort hinein, der Code der Datasection erscheint ja nicht dort wo er im
Source steht, sondern in einer DataSection.

Verfasst: 04.05.2007 18:00
von Captn. Jinguji
Hmmm ja, danke, Thomas.
Habe mich wohl von andren BasicDialects beeinflussen lassen,in denen das anders ist. Werde nächstens die Hilfe akribisch lesen...

Allerdings hätte ich unter den Umständen eher einen "Out of Data" Error erwartet, wenn das label falsch steht.

Naja. unter PB ist es halt so,wie es ist!

Verfasst: 04.05.2007 18:24
von ts-soft
>> Allerdings hätte ich unter den Umständen eher einen "Out of Data" Error erwartet
Was soll das sein, es stehen doch Daten, im gesamtem virtuellem Speicher
Deines Programmes. Solche Meldungen kommt nur von
Interpreter-Sprachen, die keine echten Label verwenden. Auf solche
Einschränkungen kann ich gut verzichten :mrgreen:
Die Labels von PB sind ja für alles Speicherbereiche brauchbar, was bei
Sprachen, die solche Fehlermeldungen rausgeben eben nicht ist.

Einsteigerfreundlichkeit von PB soll ja nicht bedeuten, das es auch
eingeschränkt wird wie eine "Babysprache", was bei einigen anderen
Basic-Dialekten der Fall ist.